Re: regex doesn't work with g++

2012-07-27 Thread Zouzou

On 27/07/12 5:26, Daniel Colascione wrote:

On 7/26/2012 8:03 PM, Yaakov (Cygwin/X) wrote:

On 2012-07-26 16:46, Daniel Colascione wrote:

$ g++ -std=gnu++0x foo.cpp
/tmp/ccS3vCW7.o:foo.cpp:(.text$_ZNSt11basic_regexIcSt12regex_traitsIcEEC1EPKcj[std::basic_regexchar,

std::regex_traitschar ::basic_regex(char const*, unsigned
int)]+0x60): undefined reference to `std::basic_regexchar,
std::regex_traitschar ::_M_compile()'
collect2: ld returned 1 exit status


GCC 4.5 does not have full support for C++0x.  We'll need an upgrade to
4.7 for this to work.


That's surprising. The regex header was in TR1, from back in 2005. I'd
have expected gcc to support it a long time ago. I'm also surprised to
see that the header definition present and the libstdc++ implementation
absent. That's what made me think there was something wrong with the
toolchain.

Thanks.



std::regex is not fully implemented; upgrading to GCC 4.7 won't change 
anything. there are several todo notices in regex header files hinting 
at this.


have a look at boost::regex for the time being; should be close enough 
to std::regex.


Zouzou

--
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



Re: regex doesn't work with g++

2012-07-26 Thread Yaakov (Cygwin/X)

On 2012-07-26 16:46, Daniel Colascione wrote:

$ g++ -std=gnu++0x foo.cpp
/tmp/ccS3vCW7.o:foo.cpp:(.text$_ZNSt11basic_regexIcSt12regex_traitsIcEEC1EPKcj[std::basic_regexchar,
std::regex_traitschar ::basic_regex(char const*, unsigned
int)]+0x60): undefined reference to `std::basic_regexchar,
std::regex_traitschar ::_M_compile()'
collect2: ld returned 1 exit status


GCC 4.5 does not have full support for C++0x.  We'll need an upgrade to 
4.7 for this to work.



Yaakov



--
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



Re: regex doesn't work with g++

2012-07-26 Thread Daniel Colascione
On 7/26/2012 8:03 PM, Yaakov (Cygwin/X) wrote:
 On 2012-07-26 16:46, Daniel Colascione wrote:
 $ g++ -std=gnu++0x foo.cpp
 /tmp/ccS3vCW7.o:foo.cpp:(.text$_ZNSt11basic_regexIcSt12regex_traitsIcEEC1EPKcj[std::basic_regexchar,

 std::regex_traitschar ::basic_regex(char const*, unsigned
 int)]+0x60): undefined reference to `std::basic_regexchar,
 std::regex_traitschar ::_M_compile()'
 collect2: ld returned 1 exit status
 
 GCC 4.5 does not have full support for C++0x.  We'll need an upgrade to
 4.7 for this to work.

That's surprising. The regex header was in TR1, from back in 2005. I'd
have expected gcc to support it a long time ago. I'm also surprised to
see that the header definition present and the libstdc++ implementation
absent. That's what made me think there was something wrong with the
toolchain.

Thanks.



signature.asc
Description: OpenPGP digital signature