Future evolution of c++config.h and _GLIBCXX_USE_LONG_LONG

Matt Austern austern@apple.com
Wed Jan 12 00:03:00 GMT 2005


On Jan 11, 2005, at 3:45 PM, Paolo Carlini wrote:

> Matt Austern wrote:
>
>> I suppose another question that's implicit but that I didn't ask is: 
>> would it be a desirable feature to give users a way of getting a 
>> fully conforming C++ language/library implementation without having 
>> to reconfigure and reinstall?  Should there be a compiler switch that 
>> does that?
>
> As far as the library is concerned, having _GLIBCXX_USE_LONG_LONG
> always defined (or removing the macro completely) basically means 
> having a
> few additional num_get::do_get and num_put::do_put overloads defined, 
> besides
> what is mandated by the current standard. I don't think this can 
> really hurt, but
> perhaps you or Benjamin or Gaby could explain in gory technical 
> details the
> risks of this, which, honestly, I fail to really grasp.

The danger is really on the Libc side.  According to the C++ standard, 
the following program is valid:
#define lldiv_t 0
#include <iostream>
int main() { return lldiv_t; }

No sane person would do this (other than a test suite writer), but it 
is valid.

			--Matt



More information about the Libstdc++ mailing list