[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 --- Comment #18 from Jonathan Wakely --- (In reply to Maxim Kuvyrkov from comment #3) > It appears to be > === > commit 1c4e8a96cd695c03ff85299bf2392476feae99bb > Author: François Dumont > Date: Mon Jan 20 19:15:43 2020 +0100 > > libstdc++: Fix unordered containers move constructors noexcept qualification > > _Hashtable move constructor is wrongly qualified as noexcept(true) > regardless of > _Equal and _H1 copy constructor qualifications. > _Hashtable allocator-aware move constructor is missing its noexcept > qualification like the depending unordered containers ones. > > This backport also includes the changes from r11-8062. > === > > And also confirmed on x86_64, aarch64, and aarch32. N.B. the original patch on trunk was by François, but the backport was done by me, with the "changes from r11-8062" which were mine and which caused the issue. I probably should have kept them separate, so François wouldn't get blamed. I didn't see this PR (and that I'd caused it) until I was CC'd in comment 9. Sorry it took so long to fix.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #17 from Jonathan Wakely --- It should be fixed now, sorry about that.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 --- Comment #16 from CVS Commits --- The releases/gcc-9 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:9aeab5815df1ec52b1048a157ef243a4c45234b7 commit r9-9336-g9aeab5815df1ec52b1048a157ef243a4c45234b7 Author: Jonathan Wakely Date: Fri Apr 9 15:47:26 2021 +0100 libstdc++: Fix bootstrap error due to inconsistent noexcept-specifier [PR 99983] The backport of r11-8062 as r9-9328 missed out a piece, which causes bootstrap failures. PR bootstrap/99983 * include/bits/hashtable.h (_Hashtable): Fix noexcept-specifier on definition to match the one on the declaration.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Marek Polacek changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill ||a/show_bug.cgi?id=13 --- Comment #15 from Marek Polacek --- (In reply to Marek Polacek from comment #13) > I see the ICE on x86_64 too. Reducing... Tracked in bug 13.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 --- Comment #14 from CVS Commits --- The releases/gcc-10 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:2ed860be33b61ea553bf44976ef877c8356d601b commit r10-9680-g2ed860be33b61ea553bf44976ef877c8356d601b Author: Jonathan Wakely Date: Fri Apr 9 15:47:26 2021 +0100 libstdc++: Fix bootstrap error due to inconsistent noexcept-specifier [PR 99983] The backport of r11-8062 as r10-9673 missed out a piece, which causes bootstrap failures. PR bootstrap/99983 * include/bits/hashtable.h (_Hashtable): Fix noexcept-speciofier on definition to match the one on the declaration.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Marek Polacek changed: What|Removed |Added CC||mpolacek at gcc dot gnu.org --- Comment #13 from Marek Polacek --- I see the ICE on x86_64 too. Reducing... $ xg++ -c fs_path.ii In file included from /home/mpolacek/x/gcc10/x86_64-pc-linux-gnu/libstdc++-v3/include/unordered_map:46, from /home/mpolacek/x/gcc10/x86_64-pc-linux-gnu/libstdc++-v3/include/functional:61, from /home/mpolacek/x/gcc10/x86_64-pc-linux-gnu/libstdc++-v3/include/pstl/glue_algorithm_defs.h:13, from /home/mpolacek/x/gcc10/x86_64-pc-linux-gnu/libstdc++-v3/include/algorithm:74, from /home/mpolacek/src/gcc10/libstdc++-v3/src/c++17/fs_path.cc:35: /home/mpolacek/x/gcc10/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/hashtable.h:1317:63: internal compiler error: in merge_exception_specifiers, at cp/typeck2.c:2420 1317 | std::is_nothrow_copy_constructible<_Equal>::value) | ^ 0xe1e274 merge_exception_specifiers(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/typeck2.c:2420 0xdef11c merge_types(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/typeck.c:890 0xb14e18 duplicate_decls(tree_node*, tree_node*, bool, bool) /home/mpolacek/src/gcc/gcc/cp/decl.c:2339 0xb3a380 grokfndecl /home/mpolacek/src/gcc/gcc/cp/decl.c:10143 0xb468b3 grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*, decl_context, int, tree_node**) /home/mpolacek/src/gcc/gcc/cp/decl.c:13903 0xb54ba2 start_function(cp_decl_specifier_seq*, cp_declarator const*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/decl.c:16838 0xcb0635 cp_parser_function_definition_from_specifiers_and_declarator /home/mpolacek/src/gcc/gcc/cp/parser.c:29904 0xc9f847 cp_parser_init_declarator /home/mpolacek/src/gcc/gcc/cp/parser.c:21634 0xcb1f58 cp_parser_single_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:30528 0xcb0bdd cp_parser_template_declaration_after_parameters /home/mpolacek/src/gcc/gcc/cp/parser.c:30100 0xcb1b51 cp_parser_explicit_template_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:30366 0xcb1bab cp_parser_template_declaration_after_export /home/mpolacek/src/gcc/gcc/cp/parser.c:30385 0xc95af6 cp_parser_template_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:16594 0xc913c4 cp_parser_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:14070 0xc917d7 cp_parser_toplevel_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:14168 0xc90f78 cp_parser_declaration_seq_opt /home/mpolacek/src/gcc/gcc/cp/parser.c:13956 0xc9ce98 cp_parser_namespace_body /home/mpolacek/src/gcc/gcc/cp/parser.c:20465 0xc9ce41 cp_parser_namespace_definition /home/mpolacek/src/gcc/gcc/cp/parser.c:20443 0xc915c7 cp_parser_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:14119 0xc917d7 cp_parser_toplevel_declaration /home/mpolacek/src/gcc/gcc/cp/parser.c:14168
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Jonathan Wakely changed: What|Removed |Added Status|NEW |ASSIGNED --- Comment #12 from Jonathan Wakely --- (the backport was incomplete, I must have messed up a conflict resolution)
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 --- Comment #11 from Jonathan Wakely --- This should fix it: --- a/libstdc++-v3/include/bits/hashtable.h +++ b/libstdc++-v3/include/bits/hashtable.h @@ -1319,8 +1319,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _H1, _H2, _Hash, _RehashPolicy, _Traits>:: _Hashtable(_Hashtable&& __ht, __node_alloc_type&& __a, true_type /* alloc always equal */) -noexcept(std::is_nothrow_copy_constructible<_H1>::value && -std::is_nothrow_copy_constructible<_Equal>::value) +noexcept(_S_nothrow_move()) : __hashtable_base(__ht), __map_base(__ht), __rehash_base(__ht),
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Martin Liška changed: What|Removed |Added CC||hjl.tools at gmail dot com --- Comment #10 from Martin Liška --- *** Bug 6 has been marked as a duplicate of this bug. ***
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org, ||redi at gcc dot gnu.org --- Comment #9 from Jakub Jelinek --- I guess we want in addition to the reversions (if needed) try to cvise reduce a testcase and bisect what if anything fixed it on the trunk and file a PR for that and see if it can be fixed on the branches.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 --- Comment #8 from Maxim Kuvyrkov --- I'll revert on gcc-10 and then backport the revert to gcc-9.
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Richard Biener changed: What|Removed |Added Known to work||9.3.0 --- Comment #7 from Richard Biener --- Yes, the offending rev. was backported to 9 (but not 8, I checked).
[Bug bootstrap/99983] [9/10 regression] ICE in bootstrap while building libstdc++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99983 Rainer Orth changed: What|Removed |Added Target Milestone|10.4|9.4 Summary|[10 regression] ICE in |[9/10 regression] ICE in |bootstrap while building|bootstrap while building |libstdc++ |libstdc++ CC||ro at gcc dot gnu.org Target|powerpc64*-linux-gnu|powerpc64*-linux-gnu |x86_64-linux-gnu|x86_64-linux-gnu |aarch64-linux-gnu |aarch64-linux-gnu |arm-linux-gnueabihf |arm-linux-gnueabihf, ||*-*-solaris2.* Host|powerpc64*-linux-gnu|powerpc64*-linux-gnu |x86_64-linux-gnu|x86_64-linux-gnu |aarch64-linux-gnu |aarch64-linux-gnu |arm-linux-gnueabihf |arm-linux-gnueabihf, ||*-*-solaris2.* Build|powerpc64*-linux-gnu|powerpc64*-linux-gnu |x86_64-linux-gnu|x86_64-linux-gnu |aarch64-linux-gnu |aarch64-linux-gnu |arm-linux-gnueabihf |arm-linux-gnueabihf, ||*-*-solaris2.* --- Comment #6 from Rainer Orth --- I'm seeing exactly the same ICE on the gcc-9 branch for sparc-sun-solaris2.10 and i386-pc-solaris2.10. The same patch has been backported there, too.