extern(C++, ns) is wrong

rikki cattermole rikki at cattermole.co.nz
Wed Sep 19 05:56:53 UTC 2018


On 19/09/2018 1:49 PM, Jonathan M Davis wrote:
> On Tuesday, September 18, 2018 6:22:55 PM MDT Manu via Digitalmars-d wrote:
>> On Mon, 17 Sep 2018 at 06:00, Atila Neves via Digitalmars-d
>>
>> <digitalmars-d at puremagic.com> wrote:
>>> On Sunday, 16 September 2018 at 17:46:26 UTC, Steven
>>>
>>> Schveighoffer wrote:
>>>> On 9/14/18 6:41 PM, Neia Neutuladh wrote:
>>>>> Specifically, Walter wants this to compile:
>>>>>
>>>>> module whatever;
>>>>> extern(C++, foo) void doStuff();
>>>>> extern(C++, bar) void doStuff();
>>>>>
>>>>> And he's not too concerned that you might have to use doubly
>>>>> fully qualified names to refer to C++ symbols, like:
>>>>>
>>>>> import core.stdcpp.sstream;
>>>>> import core.stdcpp.vector;
>>>>> core.stdcpp.vector.std.vector v;
>>>>
>>>> This is probably the best explanation of why the current
>>>> situation sucks.
>>>>
>>>> -Steve
>>>
>>> Agreed. Up until now, I didn't even understand the rationale for
>>> why it works the way it does.
>>
>> https://github.com/dlang/dmd/pull/8667
>>
>> O_O
>>
>> Thank you Walter for coming to the party!
> 
> Oh, wow. I sure wasn't expecting that. I thought that he'd made it pretty
> clear that a DIP was needed, and even then, it didn't seem likely that it
> would be accepted. This is awesome. I guess that he finally came around.
> 
> - Jonathan M Davis

Indeed, thank you Walter!


More information about the Digitalmars-d mailing list