Bug 23961 – Overload set created using selective imports causes declarations to conflict with themselves

Status
NEW
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2023-06-04T11:34:46Z
Last change time
2024-12-13T19:29:28Z
Keywords
rejects-valid
Assigned to
No Owner
Creator
Vladimir Panteleev
Moved to GitHub: dmd#20293 →

Comments

Comment #0 by dlang-bugzilla — 2023-06-04T11:34:46Z
///////// a.d ///////// void fun(int v) {} ///////// b.d ///////// void fun(string v) {} ///////// c.d ///////// public import a : fun; private import b : fun; //////// test.d /////// import a; import c; void main() { fun(1); } /////////////////////// Compiler says: test.d(6): Error: `fun` matches conflicting symbols: a.d(1): function `a.fun` a.d(1): function `a.fun`
Comment #1 by robert.schadek — 2024-12-13T19:29:28Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/20293 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB