[Issue 14095] New: explicitly exclude symbol from resolution consideration

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Sat Jan 31 14:44:21 PST 2015


https://issues.dlang.org/show_bug.cgi?id=14095

          Issue ID: 14095
           Summary: explicitly exclude symbol from resolution
                    consideration
           Product: D
           Version: D1 & D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: DMD
          Assignee: nobody at puremagic.com
          Reporter: vlevenfeld at gmail.com

There needs to be a mechanism for specifically excluding a particular symbol
from resolution in a given scope.

I've been struggling for months to chase std.array.array out of my codebase: I
use a custom multidimensional array and, somehow, when I call .array on
anything, std.array takes the call and subsequently fails to compile. My custom
array isn't attempted, and no symbol conflict error is issued by the compiler.
Sometimes .array will correctly route to my array, but its a coin toss.

I suspect this has something to do with the longstanding import visibility bug,
and I've been led to understand that fixing it is a massive and tricky
undertaking, so until its solved, something like 

  pragma (excludeSymbol, std.array.array);

would be immensely helpful, if only as a stopgap measure.

--


More information about the Digitalmars-d-bugs mailing list