public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
@ 2021-02-28 14:27 asolokha at gmx dot com
2021-03-01 9:31 ` [Bug c++/99310] " rguenth at gcc dot gnu.org
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: asolokha at gmx dot com @ 2021-02-28 14:27 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Bug ID: 99310
Summary: [11 Regression] ICE: canonical types differ for
identical types 'void (A::)(void*)' and 'void
(A::)(void*)'
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
Target: x86_64-unknown-linux-gnu
g++-11.0.0-alpha20210221 snapshot (g:2df374b337a5f6cf5528e91718e4e12e4006b7ae)
ICEs when compiling gcc/testsuite/g++.dg/other/pr39060.C w/ -march=corei7
-std=gnu++2a -fopenmp:
% x86_64-unknown-linux-gnu-g++-11.0.0 -march=corei7 -std=gnu++2a -fopenmp -c
gcc/testsuite/g++.dg/other/pr39060.C
gcc/testsuite/g++.dg/other/pr39060.C:7:3: error: 'A::A(void*)' cannot be
overloaded with 'A::A(void*)'
7 | A(void* i=); // { dg-error "overloaded|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:6:3: note: previous declaration
'A::A(void*)'
6 | A(void* i=); // { dg-error "with|specification|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:8:3: error: 'A::A(void*)' cannot be
overloaded with 'A::A(void*)'
8 | A(void* i=); // { dg-error "overloaded|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:6:3: note: previous declaration
'A::A(void*)'
6 | A(void* i=); // { dg-error "with|specification|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:10:8: error: 'void A::operator+(void*)'
cannot have default arguments
10 | void operator+ (void* i=); // { dg-error "arguments" }
| ^~~~~~~~
gcc/testsuite/g++.dg/other/pr39060.C:12:21: error: expected identifier before
'=' token
12 | virtual void foo1(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:13:13: error: expected identifier before
'=' token
13 | void foo2(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:14:13: error: expected identifier before
'=' token
14 | void foo3(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:15:13: error: expected identifier before
'=' token
15 | void foo4(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:16:13: error: expected identifier before
'=' token
16 | void foo5(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:6:13: error: expected primary-expression
at end of input
6 | A(void* i=); // { dg-error "with|specification|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:7:13: error: expected primary-expression
at end of input
7 | A(void* i=); // { dg-error "overloaded|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:8:13: error: expected primary-expression
at end of input
8 | A(void* i=); // { dg-error "overloaded|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:12:22: error: expected primary-expression
at end of input
12 | virtual void foo1(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:13:14: error: expected primary-expression
at end of input
13 | void foo2(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:14:14: error: expected primary-expression
at end of input
14 | void foo3(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:15:14: error: expected primary-expression
at end of input
15 | void foo4(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:16:14: error: expected primary-expression
at end of input
16 | void foo5(=); // { dg-error "identifier|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:19:15: error: expected primary-expression
before ')' token
19 | A::A (void* i=) {} // { dg-error "primary-expression|argument" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:19:1: error: default argument given for
parameter 1 of 'A::A(void*)' [-fpermissive]
19 | A::A (void* i=) {} // { dg-error "primary-expression|argument" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:6:3: note: previous specification in
'A::A(void*)' here
6 | A(void* i=); // { dg-error "with|specification|primary-expression" }
| ^
gcc/testsuite/g++.dg/other/pr39060.C:19:15: internal compiler error: canonical
types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
19 | A::A (void* i=) {} // { dg-error "primary-expression|argument" }
| ^
0xb1c89f comptypes(tree_node*, tree_node*, int)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/typeck.c:1540
0x962596 duplicate_decls(tree_node*, tree_node*, bool, bool)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/decl.c:2378
0x96ad54 grokfndecl
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/decl.c:10097
0x970de5 grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*,
decl_context, int, tree_node**)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/decl.c:13860
0x973646 start_function(cp_decl_specifier_seq*, cp_declarator const*,
tree_node*)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/decl.c:16795
0xa67eaf cp_parser_function_definition_from_specifiers_and_declarator
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:29810
0xa67eaf cp_parser_init_declarator
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:21555
0xa43cd8 cp_parser_simple_declaration
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:14372
0xa715e5 cp_parser_declaration
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:14069
0xa72109 cp_parser_toplevel_declaration
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:14098
0xa72109 cp_parser_translation_unit
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:4936
0xa72109 c_parse_file()
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/cp/parser.c:45172
0xb9a22d c_common_parse_file()
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210221/work/gcc-11-20210221/gcc/c-family/c-opts.c:1218
I wonder if it is a duplicate of PR99285.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
@ 2021-03-01 9:31 ` rguenth at gcc dot gnu.org
2021-04-27 11:40 ` [Bug c++/99310] [11/12 " jakub at gcc dot gnu.org
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-03-01 9:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P4
Target Milestone|--- |11.0
Keywords| |error-recovery,
| |ice-checking
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
2021-03-01 9:31 ` [Bug c++/99310] " rguenth at gcc dot gnu.org
@ 2021-04-27 11:40 ` jakub at gcc dot gnu.org
2021-07-28 7:06 ` rguenth at gcc dot gnu.org
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-04-27 11:40 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|11.0 |11.2
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 11.1 has been released, retargeting bugs to GCC 11.2.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
2021-03-01 9:31 ` [Bug c++/99310] " rguenth at gcc dot gnu.org
2021-04-27 11:40 ` [Bug c++/99310] [11/12 " jakub at gcc dot gnu.org
@ 2021-07-28 7:06 ` rguenth at gcc dot gnu.org
2021-09-20 5:30 ` asolokha at gmx dot com
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-07-28 7:06 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|11.2 |11.3
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 11.2 is being released, retargeting bugs to GCC 11.3
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
` (2 preceding siblings ...)
2021-07-28 7:06 ` rguenth at gcc dot gnu.org
@ 2021-09-20 5:30 ` asolokha at gmx dot com
2022-04-21 7:48 ` rguenth at gcc dot gnu.org
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: asolokha at gmx dot com @ 2021-09-20 5:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
--- Comment #3 from Arseny Solokha <asolokha at gmx dot com> ---
I cannot reproduce it w/ gcc-12.0.0-alpha20210919 snapshot
(g:32731fa5b0abf092029b8e2be64319b978bda514).
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
` (3 preceding siblings ...)
2021-09-20 5:30 ` asolokha at gmx dot com
@ 2022-04-21 7:48 ` rguenth at gcc dot gnu.org
2022-07-05 18:43 ` [Bug c++/99310] [11/12/13 " gscfq@t-online.de
2023-05-29 10:04 ` [Bug c++/99310] [11/12/13/14 " jakub at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-21 7:48 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|11.3 |11.4
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 11.3 is being released, retargeting bugs to GCC 11.4.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12/13 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
` (4 preceding siblings ...)
2022-04-21 7:48 ` rguenth at gcc dot gnu.org
@ 2022-07-05 18:43 ` gscfq@t-online.de
2023-05-29 10:04 ` [Bug c++/99310] [11/12/13/14 " jakub at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: gscfq@t-online.de @ 2022-07-05 18:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
--- Comment #5 from G. Steinmetz <gscfq@t-online.de> ---
ICE is reproducible with e.g. -march=nano-x2 or -march=nano-x4
(gcc configured with --enable-checking=yes)
$ gcc-13-20220703 -c pr39060.C -march=nano-x2
...
pr39060.C:19:15: internal compiler error: canonical types differ for identical
types 'void (A::)(void*)' and 'void (A::)(void*)'
19 | A::A (void* i=) {} // { dg-error "primary-expression|argument" }
| ^
0xa4d28c comptypes(tree_node*, tree_node*, int)
../../gcc/cp/typeck.cc:1560
0x7fa24c duplicate_decls(tree_node*, tree_node*, bool, bool)
../../gcc/cp/decl.cc:2470
0x6bc66f grokfndecl
../../gcc/cp/decl.cc:10580
...
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/99310] [11/12/13/14 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)'
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
` (5 preceding siblings ...)
2022-07-05 18:43 ` [Bug c++/99310] [11/12/13 " gscfq@t-online.de
@ 2023-05-29 10:04 ` jakub at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2023-05-29 10:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99310
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|11.4 |11.5
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 11.4 is being released, retargeting bugs to GCC 11.5.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-05-29 10:04 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-28 14:27 [Bug c++/99310] New: [11 Regression] ICE: canonical types differ for identical types 'void (A::)(void*)' and 'void (A::)(void*)' asolokha at gmx dot com
2021-03-01 9:31 ` [Bug c++/99310] " rguenth at gcc dot gnu.org
2021-04-27 11:40 ` [Bug c++/99310] [11/12 " jakub at gcc dot gnu.org
2021-07-28 7:06 ` rguenth at gcc dot gnu.org
2021-09-20 5:30 ` asolokha at gmx dot com
2022-04-21 7:48 ` rguenth at gcc dot gnu.org
2022-07-05 18:43 ` [Bug c++/99310] [11/12/13 " gscfq@t-online.de
2023-05-29 10:04 ` [Bug c++/99310] [11/12/13/14 " jakub at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).