Files
Jake Bailey 047ed57005 compiler: canonicalize method signature identities
The interface lowering pass used a separate formatter for method
signatures. Same-named local aliases could therefore make distinct generic
methods compare equal. Reuse getTypeCodeName so interface checks preserve
type identity.
2026-07-13 07:33:32 +02:00

62 lines
2.5 KiB
Plaintext

ok: issue5180 TestCopy1
ok: issue5180 TestCopyIgnoreNilMembers
ok: siblingA.Foo accepts own
ok: siblingB.Foo accepts own
ok: siblingA.Foo rejects siblingB.Foo
ok: siblingB.Foo rejects siblingA.Foo
ok: nestedScopes.Bar#1 accepts own
ok: nestedScopes.Bar#2 accepts own
ok: nestedScopes.Bar#3 accepts own
ok: nestedScopes.Bar#1 rejects #2
ok: nestedScopes.Bar#2 rejects #3
ok: nestedScopes.Bar#1 rejects #3
ok: genericWithLocals[int].UsesT accepts own
ok: genericWithLocals[int].NoT accepts own
ok: genericWithLocals[string].UsesT accepts own
ok: genericWithLocals[string].NoT accepts own
ok: genericWithLocals[int].UsesT rejects [string].UsesT
ok: genericWithLocals[int].NoT rejects [string].NoT
ok: genericWithLocals[string].UsesT rejects [int].UsesT
ok: genericWithLocals[string].NoT rejects [int].NoT
ok: genericWithLocals[int].UsesT matches across calls
ok: genericWithLocals[int].NoT matches across calls
ok: siblingClosures.C#1 accepts own
ok: siblingClosures.C#2 accepts own
ok: siblingClosures.C#1 rejects C#2
ok: siblingClosures.C#2 rejects C#1
ok: closureInGenericUsesT[int].X accepts own
ok: closureInGenericUsesT[string].X accepts own
ok: closureInGenericUsesT[int].X rejects [string].X
ok: closureInGenericUsesT[string].X rejects [int].X
ok: closureInGenericNoT[int].X accepts own
ok: closureInGenericNoT[string].X accepts own
ok: closureInGenericNoT[int].X rejects [string].X
ok: closureInGenericNoT[string].X rejects [int].X
ok: siblingClosuresInGeneric[int].C#1 accepts own
ok: siblingClosuresInGeneric[int].C#2 accepts own
ok: siblingClosuresInGeneric[int].C#1 rejects C#2
ok: siblingClosuresInGeneric[int].C#1 rejects [string].C#1
ok: siblingClosuresInGeneric[string].C#1 rejects [int].C#1
ok: doublyNestedInGeneric[int].Y accepts own
ok: doublyNestedInGeneric[string].Y accepts own
ok: doublyNestedInGeneric[int].Y rejects [string].Y
ok: doublyNestedInGeneric[string].Y rejects [int].Y
issue4931A labels: 0
issue4931B labels: 0
issue4931PairA labels: 0
issue4931PairB labels: 0
issue4931MethodA labels: 0
issue4931MethodB labels: 0
ok: aliasSize[float32]==32
ok: aliasSize[float64]==64
ok: aliasLocal[float32] accepts own
ok: aliasLocal[float64] accepts own
ok: aliasLocal[float32] rejects [float64]
ok: aliasLocal[float64] rejects [float32]
ok: aliasBox[float32] implements Get() float32
ok: aliasBox[float64] implements Get() float64
ok: aliasMethod[float32] accepts own
ok: aliasMethod[float64] accepts own
ok: aliasMethod[float32] rejects [float64]
ok: aliasMethod[float64] rejects [float32]