[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 Paolo Carlini changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|4.7.1 |4.8.0 --- Comment #10 from Paolo Carlini 2012-04-22 08:04:33 UTC --- Fixed.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #9 from Paolo Carlini 2012-03-12 16:09:25 UTC --- Ok, ok, so everything boils down to 50043, as I thought.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #8 from Daniel Krügler 2012-03-12 15:46:42 UTC --- (In reply to comment #6) There exists a compiler problem with noexcept and non-trivial destructor declarations as described in bug 50043 and in bug 51295. This fix should automagically ensure that std::type_infos destructor get's an assumed noexcept(true) exception specification. The additional library wording exists to ensure that independent of any implied destructor exception specification of base classes or members of library internals all destructors of library types needs to behave as noexcept. But given the current definition of std::type_info there is no reason why an explicit noexcept(true) specification should be required.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #7 from paolo at gcc dot gnu.org 2012-03-12 15:12:47 UTC --- Author: paolo Date: Mon Mar 12 15:12:40 2012 New Revision: 185235 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=185235 Log: 2012-03-12 Paolo Carlini PR libstdc++/52562 * libsupc++/typeinfo (type_info::name, before, operator==, operator!=): Mark noexcept in C++11 mode. * libsupc++/tinfo.cc (type_info::operator==): Adjust. * libsupc++/tinfo2.cc (type_info::before): Likewise. * testsuite/18_support/type_info/52562.cc: New. Added: trunk/libstdc++-v3/testsuite/18_support/type_info/52562.cc Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/libsupc++/tinfo.cc trunk/libstdc++-v3/libsupc++/tinfo2.cc trunk/libstdc++-v3/libsupc++/typeinfo
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #6 from Paolo Carlini 2012-03-12 15:02:51 UTC --- To clarify, nothing ever changed in libstdc++ as far as the type_info destructor is concerned. That said, I'm not sure to fully understand why we have the as-if in p4, or, in other terms, what it does add *beyond* core/1123.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #5 from Daniel Krügler 2012-03-12 14:06:51 UTC --- (In reply to comment #3) > Do I understand correctly that in N3291 the destructor lost the explicit > noexcept simply because of core/1123? I don't know for the reason in the stdlib++ change, but the library removed all explicit throw()/noexcept() specifications on destructors replacing it by the single general rule of [res.on.exception.handling] p4: "Every destructor in the C++ standard library shall behave as if it had a non-throwing exception specification." which was introduced during noexcept-ification.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #4 from Paolo Carlini 2012-03-12 13:50:05 UTC --- Uhm, too much has to be tweaked elsewhere if the destructor is marked noexcept. Let's leave it alone for now (c++/50043 will reconsider the issue).
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 --- Comment #3 from Paolo Carlini 2012-03-12 13:43:35 UTC --- Do I understand correctly that in N3291 the destructor lost the explicit noexcept simply because of core/1123? In that case I think that in GCC we should mark it temporarily noexcept and then remove it in mainline when c++/50043 will be addressed (I mean to work on it over the next weeks). 4_7-branch will not change anymore.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 Paolo Carlini changed: What|Removed |Added Target Milestone|--- |4.7.1
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 Paolo Carlini changed: What|Removed |Added Status|NEW |ASSIGNED AssignedTo|unassigned at gcc dot |paolo.carlini at oracle dot |gnu.org |com --- Comment #2 from Paolo Carlini 2012-03-12 12:54:26 UTC --- Let's do this now, yes, seems straightforward.
[Bug libstdc++/52562] [C++11] Most type_info functions not noexcept
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52562 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2012-03-12 Ever Confirmed|0 |1 --- Comment #1 from Jonathan Wakely 2012-03-12 12:02:01 UTC --- Oops, good catch.