Though I can't think of a reason why you would have Array as ``extern(C++)``.  Surely the case would be that you have two functions - one generated by C++, one generated by D - for the equivalent ``Array`` function rather than one that gets merged at link time?