[v3] Handle different versions of Solaris 8 <iso/math_iso.h>, <iso/stdlib_iso.h>

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Fri Aug 26 17:02:00 GMT 2011

Hi Paolo,

>> I'm pretty sure this is the case for Solaris.  The other changes we've
>> made to support __cplusplus 199711L were no-ops without the last one to change __cplusplus from 1 to the C++ 98 value.  So, redefining
>> __cplusplus to 1 should return us back to the old status.
> I see, then I think the patch is Ok. Since you are so well positioned to test on Solaris machines, I would recommend running the library testsuite with -D__cplusplus=1 added to CXXFLAGS, as a final check.

I've just done that on i386-pc-solaris2.11, but had to use -U__cplusplus
-D__cplusplus=1 to avoid the redefinition warning.  This way, I get only
a single regression:

-PASS: abi/header_cxxabi.c (test for excess errors)
+FAIL: abi/header_cxxabi.c (test for excess errors)

FAIL: abi/header_cxxabi.c (test for excess errors)
Excess errors:
/var/gcc/regression/trunk/11-gcc/build/i386-pc-solaris2.11/libstdc++-v3/include/i386-pc-solaris2.11/bits/c++config.h:167:1: error: unknown type name 'namespace'
/var/gcc/regression/trunk/11-gcc/build/i386-pc-solaris2.11/libstdc++-v3/include/i386-pc-solaris2.11/bits/c++config.h:168:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token

which is pretty obvious given that this test is supposed to be compiled
as C :-)

I guess the patch is ok now?


Rainer Orth, Center for Biotechnology, Bielefeld University

More information about the Libstdc++ mailing list