[Bug libstdc++/65473] Including <ciso646> does not define __GLIBCXX__

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Apr 9 16:01:00 GMT 2015


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65473

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Louis Dionne from comment #2)
> Does the standard specify which headers should define those macros?

Of course not, __GLIBCXX__ is not specified by the standard at all.


> If not,
> then it's a QOI issue that could easily be solved. In all cases, does stdcxx
> document which headers must be included in order to get those definitions? I
> couldn't find it.

stdcxx is the Apache C++ library isn't it?!

It's documented here:
https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html

"This macro is defined in the file "c++config" in the
"libstdc++-v3/include/bits" directory."

That's not very helpful though, because the file is renamed <bits/c++config.h>
during installation, and is not a standard header so can't be included unless
using libstdc++.

But the unhelpful answer is "include anything that includes <bits/c++config.h>"



More information about the Gcc-bugs mailing list