strtof is not defined anymore in std=c++11

Jon TURNEY jon.turney@dronecode.org.uk
Thu Apr 11 12:23:00 GMT 2013


On 11/04/2013 11:24, Corinna Vinschen wrote:
> On Apr  9 15:18, Jon TURNEY wrote:
>> $ g++ c99-stdlib-test.cpp -std=c++03 -Werror=implicit-function-declaration
>> c99-stdlib-test.cpp: In function ‘int main()’:
>> c99-stdlib-test.cpp:5:27: error: ‘strtoll’ was not declared in this scope
>>    strtoll("1234", NULL , 0);
>>                            ^
>> c99-stdlib-test.cpp:6:27: error: ‘strtoull’ was not declared in this scope
>>    strtoull("1234", NULL, 0);
>>                            ^
>> c99-stdlib-test.cpp:7:22: error: ‘strtof’ was not declared in this scope
>>    strtof("1234", NULL);
>>                       ^
>>
>> $ g++ c99-stdlib-test.cpp -std=c++11 -Werror=implicit-function-declaration
> 
> Unfortunately, compilation fails when building a plain-C application
> since __cplusplus is undefined in that case.  I checked in a patched
> patch which also checks if __cplusplus is defined.

I'm obviously missing something here, as it WFM.



More information about the Newlib mailing list