[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 --- Comment #11 from Eric Botcazou --- > thanks for fixing this. Shouldn't we keep the PR open, though? It's > still an ice-on-invalid. Given that it didn't raise much interest as ice-on-valid-code, I wouldn't expect it to raise interest as ice-on-invalid at all. :-) More seriously, the ICE is not a regression and only enabled with checking: if (TREE_CODE (expr) == INTEGER_CST) { if (operand_equal_p (expr, boolean_true_node, 0)) return noexcept_true_spec; else { gcc_checking_assert (operand_equal_p (expr, boolean_false_node, 0)); return noexcept_false_spec; } } so I wouldn't bother about it.
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 --- Comment #10 from ro at CeBiTec dot Uni-Bielefeld.DE --- Hi Eric, thanks for fixing this. Shouldn't we keep the PR open, though? It's still an ice-on-invalid. Rainer
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 Eric Botcazou changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #9 from Eric Botcazou --- .
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 --- Comment #8 from Eric Botcazou --- Author: ebotcazou Date: Thu Dec 8 15:52:11 2016 New Revision: 243443 URL: https://gcc.gnu.org/viewcvs?rev=243443=gcc=rev Log: PR libstdc++/78264 * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM): Turn _N into _NE. (_GLIBCXX_NOEXCEPT_QUAL): Likewise. Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/include/bits/c++config
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 Eric Botcazou changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |ebotcazou at gcc dot gnu.org --- Comment #7 from Eric Botcazou --- It's the new macro in c++config: #if __cpp_noexcept_function_type #define _GLIBCXX_NOEXCEPT_PARM , bool _N #define _GLIBCXX_NOEXCEPT_QUAL noexcept (_N) #else #define _GLIBCXX_NOEXCEPT_PARM #define _GLIBCXX_NOEXCEPT_QUAL #endif See this comment a few lines below in the same file: // This marks string literals in header files to be extracted for eventual // translation. It is primarily used for messages in thrown exceptions; see // src/functexcept.cc. We use __N because the more traditional _N is used // for something else under certain OSes (see BADNAMES). #define __N(msgid) (msgid) Testing trivial fix...
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 --- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE --- > --- Comment #5 from Eric Botcazou --- > Still present on Solaris. Jason, could you please have a look at this PR? Your patch (r241944) 2016-11-07 Jason MerrillImplement P0012R1, Make exception specifications part of the type system. has introduced those massive regressions on Solaris, as I've just verified on i386-pc-solaris2.12 and sparc-sun-solaris2.12 (but it affects any Solaris version). Thanks. Rainer
[Bug libstdc++/78264] [7 regression] ICE in build_noexcept_spec, at cp/except.c:1196
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78264 Eric Botcazou changed: What|Removed |Added Target|i386-pc-solaris2.12,|i386-pc-solaris2.12, |sparc-sun-solaris2.12, |sparc-sun-solaris2.12, |x86-64-linux-gnu| CC||ebotcazou at gcc dot gnu.org Component|c++ |libstdc++ Host|i386-pc-solaris2.12,|i386-pc-solaris2.12, |sparc-sun-solaris2.12, |sparc-sun-solaris2.12 |x86-64-linux-gnu| Build|i386-pc-solaris2.12,|i386-pc-solaris2.12, |sparc-sun-solaris2.12, |sparc-sun-solaris2.12 |x86-64-linux-gnu| Severity|normal |major --- Comment #5 from Eric Botcazou --- Still present on Solaris.