public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/58338] New: Add noexcept to functions with a narrow contract
@ 2013-09-06 17:33 glisse at gcc dot gnu.org
  2013-09-06 18:12 ` [Bug libstdc++/58338] " daniel.kruegler at googlemail dot com
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: glisse at gcc dot gnu.org @ 2013-09-06 17:33 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338

            Bug ID: 58338
           Summary: Add noexcept to functions with a narrow contract
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: enhancement
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: glisse at gcc dot gnu.org

Hello,

the standard only requires a noexcept specifier on functions with a wide
contract, to allow some debug implementations of functions with a narrow
contract. However, it also explicitly gives permission to strengthen the
exception specification of non-virtual functions. I believe libstdc++ should
add noexcept whereever it can, since this is supposed to help with performance.

Functions like vector::front seem like good candidates. I wouldn't mind if the
debug version had a different exception specification, but that doesn't even
seem necessary since libstdc++ aborts instead of throwing.

https://groups.google.com/a/isocpp.org/d/msg/std-discussion/lkRyImxouC0/kZpWqI0MjXsJ


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-07-10  8:22 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-06 17:33 [Bug libstdc++/58338] New: Add noexcept to functions with a narrow contract glisse at gcc dot gnu.org
2013-09-06 18:12 ` [Bug libstdc++/58338] " daniel.kruegler at googlemail dot com
2013-09-17 12:24 ` glisse at gcc dot gnu.org
2013-09-18 11:21 ` glisse at gcc dot gnu.org
2013-09-18 18:31 ` glisse at gcc dot gnu.org
2013-09-19 11:40 ` glisse at gcc dot gnu.org
2013-09-20 15:50 ` glisse at gcc dot gnu.org
2013-09-24 10:07 ` glisse at gcc dot gnu.org
2013-09-25 20:28 ` glisse at gcc dot gnu.org
2013-10-12 22:06 ` bredelin at ucla dot edu
2013-10-13  6:24 ` glisse at gcc dot gnu.org
2013-10-13  7:20 ` glisse at gcc dot gnu.org
2013-10-13 11:13 ` paolo.carlini at oracle dot com
2014-02-22 10:24 ` glisse at gcc dot gnu.org
2021-08-31  8:19 ` redi at gcc dot gnu.org
2021-08-31  8:37 ` glisse at gcc dot gnu.org
2023-07-09 15:29 ` dangelog at gmail dot com
2023-07-10  8:22 ` redi at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).