[Issue 15098] New: C++ nameslace problems
    via Digitalmars-d-bugs 
    digitalmars-d-bugs at puremagic.com
       
    Mon Sep 21 21:34:03 PDT 2015
    
    
  
https://issues.dlang.org/show_bug.cgi?id=15098
          Issue ID: 15098
           Summary: C++ nameslace problems
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Windows
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody at puremagic.com
          Reporter: turkeyman at gmail.com
Getting this error a lot:
  Error: namespace ud.kernel.kernel.ud conflicts with import
ud.kernel.kernel.ud at udKernel\src\ud\kernel\kernel.d(3)
This code:
  module ud.kernel.kernel;
  import ud.kernel.component;
  extern(C++, ud):
  class Kernel
  {
    ...
  }
It seems the problem is that the root of the D namespace is 'ud', but my C++
namespace is also 'ud', and this doesn't seem to be acceptable.
If I remove `ud.` from the D namespace, the errors stop.
I think this is valid code, there are no guarantees that my C++ namespace is
not the same as the root D namespace, infact it seems highly likely to me.
--
    
    
More information about the Digitalmars-d-bugs
mailing list