SunOS4 bootstrap failure: gcc/include not treated as a system dir

Kaveh R. Ghazi ghazi@caip.rutgers.edu
Sat Feb 5 16:57:00 GMT 2000


	I'm getting the following failure on SunOS4 after the 3-stage
bootstrap when building libstdc++:

 >   ../../../egcs-CVS20000205/libstdc++/cinst.cc -o fcomplex.o
 > In file included from ../../../egcs-CVS20000205/libstdc++/complex:7,
 >     from ../../../egcs-CVS20000205/libstdc++/std/complext.cc:28,
 >     from ../../../egcs-CVS20000205/libstdc++/cinst.cc:29:
 > /a/caip/a99/u99/ghazi/gcc-testing/sunos-test/build/gcc/include/math.h:67:
 > previous declaration of `double hypot (double, double)' with C++ linkage
 > ../../../egcs-CVS20000205/libstdc++/std/complext.h:314: conflicts with
 > new declaration with C linkage
 > make[2]: *** [bigstmp-complx] Error 1


IIRC, g++ treats system includes as having an implicit extern "C".

Therefore gcc/include/math.h hypot() should be getting extern "C" and
for some reason it (and everything else in gcc/include) is getting C++
linkage.

		--Kaveh
--
Kaveh R. Ghazi			Engagement Manager / Project Services
ghazi@caip.rutgers.edu		Qwest Internet Solutions


More information about the Gcc-bugs mailing list