https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92416
Bug ID: 92416 Summary: ICE with spaceship and vector types Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- constexpr auto cmp() { [[gnu::vector_size(4)]] int i = { }; return i <=> i; } static_assert( cmp() ); With recent trunk and -std=gnu+2a this crashes: ice.cc: In function 'constexpr auto cmp()': ice.cc:6:1: internal compiler error: Segmentation fault 6 | } | ^ 0xf802af crash_signal /home/jwakely/src/gcc/gcc/gcc/toplev.c:329 0x60cd8f tree_check(tree_node const*, char const*, int, char const*, tree_code) /home/jwakely/src/gcc/gcc/gcc/tree.h:3522 0x60cd8f id_equal(tree_node const*, char const*) /home/jwakely/src/gcc/gcc/gcc/tree.h:3810 0x60cd8f is_cat /home/jwakely/src/gcc/gcc/gcc/cp/method.c:1000 0x9409b2 cat_tag_for /home/jwakely/src/gcc/gcc/gcc/cp/method.c:1011 0x9409b2 genericize_spaceship(tree_node*, tree_node*, tree_node*) /home/jwakely/src/gcc/gcc/gcc/cp/method.c:1048 0x8ae59a genericize_spaceship /home/jwakely/src/gcc/gcc/gcc/cp/cp-gimplify.c:1155 0x8ae59a cp_genericize_r /home/jwakely/src/gcc/gcc/gcc/cp/cp-gimplify.c:1589 0x124501b walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) /home/jwakely/src/gcc/gcc/gcc/tree.c:11946 0x124572d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) /home/jwakely/src/gcc/gcc/gcc/tree.c:12276 0x1245690 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) /home/jwakely/src/gcc/gcc/gcc/tree.c:12051 0x8aee2b cp_genericize_r /home/jwakely/src/gcc/gcc/gcc/cp/cp-gimplify.c:1398 0x124501b walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) /home/jwakely/src/gcc/gcc/gcc/tree.c:11946 0x8ab0c8 cp_genericize_tree /home/jwakely/src/gcc/gcc/gcc/cp/cp-gimplify.c:1706 0x8ab362 cp_genericize(tree_node*) /home/jwakely/src/gcc/gcc/gcc/cp/cp-gimplify.c:1855 0x8e9f3a finish_function(bool) /home/jwakely/src/gcc/gcc/gcc/cp/decl.c:16957 0x995bcf cp_parser_function_definition_after_declarator /home/jwakely/src/gcc/gcc/gcc/cp/parser.c:28564 0x9969d3 cp_parser_function_definition_from_specifiers_and_declarator /home/jwakely/src/gcc/gcc/gcc/cp/parser.c:28477 0x9969d3 cp_parser_init_declarator /home/jwakely/src/gcc/gcc/gcc/cp/parser.c:20495 0x976482 cp_parser_simple_declaration /home/jwakely/src/gcc/gcc/gcc/cp/parser.c:13624 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.