Compiling DMD with C++11

Andre Artus andre.artus at gmail.com
Wed Aug 7 01:49:16 PDT 2013


On Wednesday, 7 August 2013 at 08:18:26 UTC, David Nadlinger 
wrote:
> On Tuesday, 6 August 2013 at 22:58:21 UTC, Andre Artus wrote:
>> Okay. I already changed those in my copy.
>> Just out of interest: what would be an acceptable name to 
>> change 'strtold' to?
>
> strtold is a C standard library function, but due to the 
> portability problems the actual compiler code should use 
> Port::strtold: 
> https://github.com/D-Programming-Language/dmd/blob/master/src/root/port.h#L59 
> (OTOH, some backend/* code might pull it in directly, though).
>
> As for what name to use for the internal implementation of 
> Port::strtold on MSVC, you can pretty much pick whatever you 
> like, as it shouldn't affect any other code.
>
> David

I'm not near my Windows PC right now, but if memory serves the 
name clash occurs in the following places:

https://github.com/D-Programming-Language/dmd/blob/master/src/backend/strtold.c?source=cc#L138

https://github.com/D-Programming-Language/dmd/blob/master/src/root/longdouble.h#L201

https://github.com/D-Programming-Language/dmd/blob/master/src/backend/strtold.c#L567

I do not recall "Port::strtold" being a problem, other than that 
(if I recall correctly) it forwards to the conflicting function.

https://github.com/D-Programming-Language/dmd/blob/master/src/root/port.c#L118




More information about the Digitalmars-d mailing list