On 1/12/2016 8:46 PM, Manu via Digitalmars-d wrote:
Of course that's an error, declaring 2 symbols with the same name at
the top level of the same module is obviously an error. No D coder
would expect otherwise.
There's no realistic scenario that could lead to that case; why would
you have an extern(C++) symbol in some module and also want to put a D
symbol with the same name in the same place?

If you like:

    extern (C++) {
        int a;
        extern (C++,ns) {
            int a;
        }
    }

The whole point of scoped names is to be able to do this.

Also, I would expect to be able to access "ns.a" with the syntax "ns.a", meaning ns has to be a scope.


> Of course, it would save a lot of effort if you agreed that the design
is wrong, and none of us need to do anything further.

I regard it as crucial to determine the cause of your problems before assuming it is the design.

Reply via email to