This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/82531] ICE: Segmentation fault (-std=c++1z -fconcepts)
- From: "gcc-bugs at deta dot lv" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 14 Oct 2017 18:22:55 +0000
- Subject: [Bug c++/82531] ICE: Segmentation fault (-std=c++1z -fconcepts)
- Auto-submitted: auto-generated
- References: <bug-82531-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82531
Arturs Zoldners <gcc-bugs at deta dot lv> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #42363|0 |1
is obsolete| |
--- Comment #3 from Arturs Zoldners <gcc-bugs at deta dot lv> ---
Created attachment 42368
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42368&action=edit
testcase archive
Correction: it was still an invalid code in my previous post. Substitution
"auto" -> [some concept] creates invalid code in variadic context.
While trying to create a test case with a valid code, I encountered another
ICE, I believe on a valid code (at least to my understanding of N3580 section
4.5.1). The substitution typename -> [some concept] triggers an ICE, but with a
back-trace similar to bug #68372:
------------------------
testcase.cpp: In instantiation of ‘struct _map_impl<std::integer_sequence<long
unsigned int, 0, 1> >’:
testcase.cpp:29:56: required from here
testcase.cpp:17:34: internal compiler error: in tsubst_constraint, at
cp/constraint.cc:1956
static constexpr decltype(auto) function(auto const& fun, TUPLES const&...
tuples)
^~~~~~~~
0x71ba6d tsubst_constraint(tree_node*, tree_node*, int, tree_node*)
../../gcc/cp/constraint.cc:1956
0x71bb19 tsubst_constraint_info(tree_node*, tree_node*, int, tree_node*)
../../gcc/cp/constraint.cc:1918
0x628070 tsubst_decl
../../gcc/cp/pt.c:12440
0x6145df tsubst(tree_node*, tree_node*, int, tree_node*)
../../gcc/cp/pt.c:13404
0x627ad0 tsubst_decl
../../gcc/cp/pt.c:12214
0x6145df tsubst(tree_node*, tree_node*, int, tree_node*)
../../gcc/cp/pt.c:13404
0x62f2e0 instantiate_class_template_1
../../gcc/cp/pt.c:10546
0x62f2e0 instantiate_class_template(tree_node*)
../../gcc/cp/pt.c:10880
0x6926e5 complete_type(tree_node*)
../../gcc/cp/typeck.c:133
0x67a092 cp_parser_nested_name_specifier_opt
../../gcc/cp/parser.c:6158
0x67ce55 cp_parser_simple_type_specifier
../../gcc/cp/parser.c:16849
0x673dc8 cp_parser_postfix_expression
../../gcc/cp/parser.c:6704
0x67499d cp_parser_unary_expression
../../gcc/cp/parser.c:8108
0x675743 cp_parser_cast_expression
../../gcc/cp/parser.c:8786
0x675eb7 cp_parser_binary_expression
../../gcc/cp/parser.c:8887
0x676584 cp_parser_assignment_expression
../../gcc/cp/parser.c:9174
0x67977a cp_parser_expression
../../gcc/cp/parser.c:9343
0x66b864 cp_parser_jump_statement
../../gcc/cp/parser.c:12160
0x66b864 cp_parser_statement
../../gcc/cp/parser.c:10594
0x66be4d cp_parser_statement_seq_opt
../../gcc/cp/parser.c:11040
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
------------------------
If this is related and relevant to bug #68372, please forward.