On Wednesday, 6 January 2016 at 17:55:01 UTC, Walter Bright wrote:
Found and fixed another fwd ref problem with circular imports:

  https://github.com/D-Programming-Language/dmd/pull/5333

This one had nothing to do with C++ namespaces; it showed up for structs and classes, too. This implies that the current design is sound, and a redesign is not necessarily desirable.

By reading Manu's post, I was under the impression that it was actually impossible to use the C++ symbol _without_ the full namespace path, like with static imports. I should have checked this, because it turns out this isn't true at all. I agree then that the current design is mostly ok, especially with your bug fixes.

But there remains the issue of using D keywords in C++ namespaces. Maybe there could be a variant `extern(C++, "ns1.ns2.as.string")`, that doesn't create symbols and affects mangling only?

Reply via email to