Bug 18771 – Identical overload sets in different modules have different identities

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2018-04-17T13:30:20Z
Last change time
2018-09-12T09:13:16Z
Assigned to
No Owner
Creator
timon.gehr

Comments

Comment #0 by timon.gehr — 2018-04-17T13:30:20Z
DMD v2.079.0: --- module a; void foo(int){} --- --- module b; void foo(string){} --- --- module c; import a, b; alias fooC=foo; --- --- module d; import a, b; alias fooD=foo; --- --- module e; import c, d; static assert(__traits(isSame, fooC, fooD)); // fail --- The code should compile.
Comment #1 by razvan.nitu1305 — 2018-09-06T13:52:41Z
Comment #2 by github-bugzilla — 2018-09-12T09:13:15Z
Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/a04db92fab82abe1111c2c645f6832e24fba1c1c Fix Issue 18771 - Identical overload sets in different modules have different identities https://github.com/dlang/dmd/commit/44ff6c62b9c8ec8b909303b3a81541aef8ac282f Merge pull request #8675 from RazvanN7/Issue_18771 Fix Issue 18771 - Identical overload sets in different modules have different identities