https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107539
Bug ID: 107539
Summary: internal compiler error: same canonical type node for
different types
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: franckbehaghel_gcc at protonmail dot com
Target Milestone: ---
Created attachment 53835
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53835&action=edit
preprocessed source
When compiling gimp 2.10 with a fresh gcc version :
3ad2167bbac8ae83b1e91305b105ab5287bdac55 , I get the following error :
gimppaintcore-loops.cc: In lambda function:
gimppaintcore-loops.cc:472:61: internal compiler error: same canonical type
node for different types ‘AlgorithmTemplate<typename decltype
(algorithm)::type>’ and ‘AlgorithmTemplate<typename decltype
(algorithm)::type>’
472 | visitor (identity<AlgorithmTemplate<NewAlgorithm>> ());
| ^~
0xc4306c comptypes(tree_node*, tree_node*, int)
/GIT_REPO/build/gcc/gcc/gcc/cp/typeck.cc:1717
0xb99717 template_args_equal(tree_node*, tree_node*, bool)
/GIT_REPO/build/gcc/gcc/gcc/cp/pt.cc:9284
0xb993fc template_args_equal(tree_node*, tree_node*, bool)
/GIT_REPO/build/gcc/gcc/gcc/cp/pt.cc:9247
0xb993fc comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**,
bool)
/GIT_REPO/build/gcc/gcc/gcc/cp/pt.cc:9329
0xba42c3 spec_hasher::equal(spec_entry*, spec_entry*)
/GIT_REPO/build/gcc/gcc/gcc/cp/pt.cc:1668
0xbecf73 hash_table<spec_hasher, false,
xcallocator>::find_with_hash(spec_entry* const&, unsigned int)
/GIT_REPO/build/gcc/gcc/gcc/hash-table.h:926
0xbd4dac lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*,
int, int)
/GIT_REPO/build/gcc/gcc/gcc/cp/pt.cc:9945
0xc044ed finish_template_type(tree_node*, tree_node*, int)
/GIT_REPO/build/gcc/gcc/gcc/cp/semantics.cc:3755
0xb6a808 cp_parser_template_id
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:18368
0xb6aaab cp_parser_class_name
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:25826
0xb60f6e cp_parser_qualifying_entity
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:7183
0xb60f6e cp_parser_nested_name_specifier_opt
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:6865
0xb7a848 cp_parser_simple_type_specifier
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:19809
0xb5e98c cp_parser_postfix_expression
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:7640
0xb469bc cp_parser_binary_expression
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:10091
0xb47792 cp_parser_assignment_expression
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:10431
0xb4c9ee cp_parser_parenthesized_expression_list_elt
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:8054
0xb4cfb1 cp_parser_parenthesized_expression_list
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:8523
0xb5ef71 cp_parser_postfix_expression
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:7798
0xb469bc cp_parser_binary_expression
/GIT_REPO/build/gcc/gcc/gcc/cp/parser.cc:10091
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
To reproduce : g++ -x c++ ccYvosm6.out1
Or copy&paste ccYvosm6.out1 in compiler explorer ( https://godbolt.org/ ).
Similar output is generated.
Regards,
Franck