On Monday, 28 April 2014 at 06:47:08 UTC, Walter Bright wrote:
I have no idea what a type being "structural for the extern"
means.
"structural" is the wrong word. I meant that if two D frameworks
bind the same c++ library you want the two externs to be
interchangable in user code. However if D libraries overlaps the
identifier path then you run into namespace issues. So the
probability of expanding libraries causing issues increase by
conflating D and C++ identifier paths.
1. in D you will never write std::something
Which will cause unecessary naming conflicts.
2. D can access a function foo without qualification in
multiple imports, as long as the overloads do not intersect
3. Otherwise, you'll need to qualify to say which one you meant
So recompiling with updated libraries may cause failure?