This is the mail archive of the
cygwin
mailing list for the Cygwin project.
RE: _GLIBCXX_USE_C99 not working?
- From: "Dave Korn" <dave dot korn at artimi dot com>
- To: <cygwin at cygwin dot com>
- Date: Fri, 18 May 2007 11:58:19 +0100
- Subject: RE: _GLIBCXX_USE_C99 not working?
- References: <464CBBD5.4040709@t-online.de>
On 17 May 2007 21:32, Christian Franke wrote:
> Defining _GLIBCXX_USE_C99 does not work with current Cygwin C++ includes.
>
> Testcase:
>
> #define _GLIBCXX_USE_C99 1 // need std::llabs()
Can you point me at any documentation that says this is a valid thing to do?
AFAICT that's an internal symbol in the '_' namespace that user code has no
business messing around with. Cygwin is not a glibc program so telling
libstdc that it is seems inherently bogus to me.
/artimi/software/firmware $ grep -wB1 _GLIBCXX_USE_C99
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/i686-pc-cygwin/bits/c++config.h
// Define if C99 features such as lldiv_t, llabs, lldiv should be exposed.
/* #undef _GLIBCXX_USE_C99 */
As you see, it is part of the internal configuration, generated by autoconf
or some similar process at the time the library is compiled and installed.
http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/c++config_8h.html
"This is an internal header file, included by other library headers. You
should not attempt to use it directly."
If you want this to work, I guess we shoult implement strtold in newlib, or
patch libstdc for finer granularity in what it assumes _GLIBCXX_USE_C99
implies is available.
cheers,
DaveK
--
Can't think of a witty .sigline today....
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/