https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128539
Bug ID: 128539
Summary: internal compiler error: same canonical type node for
different types
Product: gcc
Version: 17.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: 0599jiangyc at gmail dot com
Target Milestone: ---
The following code:
```cpp
struct A { void f (int = 0); };
typedef void (A::*PF) (int) __attribute__ ((ms_abi));
void g () { PF pf = &A::f; }
```
Resulted in this output:
```
<source>:3:25: internal compiler error: same canonical type node for different
types 'void (A::*)(int)' and 'PF' {aka 'void (A::*)(int)'}
```
Trunk reproducer: https://godbolt.org/z/767eYTrqz