Discussion:
realpath() function not declared in scope when "-std=c++11" option added to g++
MyBig SpamEmail
2016-03-02 06:58:25 UTC
Permalink
Compiling the following code in test.cpp:

#include <limits.h>
#include <stdlib.h>

int main ( void )
{
realpath ( "//.", NULL );
return 0;
}

This works:
% g++ test.cpp

This doesn't:
% g++ -std=c++11 test.cpp
test.cpp: In function ‘int main()’:
test.cpp:8:25: error: ‘realpath’ was not declared in this scope
realpath ( "//.", NULL );
^

Is this expected behavior?

--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Csaba Raduly
2016-03-02 08:55:29 UTC
Permalink
Hi MyBig,
Post by MyBig SpamEmail
#include <limits.h>
#include <stdlib.h>
int main ( void )
{
realpath ( "//.", NULL );
return 0;
}
% g++ test.cpp
% g++ -std=c++11 test.cpp
test.cpp:8:25: error: ‘realpath’ was not declared in this scope
realpath ( "//.", NULL );
^
I don't have a Cygwin machine at hand, but try compiling with
-std=gnu++11 instead of -std=c++11. realpath() might be hidden if
__STRICT_ANSI__ is defined (when you use -std=c++11, IIRC).

Csaba
--
GCS a+ e++ d- C++ ULS$ L+$ !E- W++ P+++$ w++$ tv+ b++ DI D++ 5++
The Tao of math: The numbers you can count are not the real numbers.
Life is complex, with real and imaginary parts.
"Ok, it boots. Which means it must be bug-free and perfect. " -- Linus Torvalds
"People disagree with me. I just ignore them." -- Linus Torvalds

--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Loading...