[bug-notifications] [gcc4core 0004275]: 32-bit solaris 2.10 systems use solaris 2.8 includes

Mantis Bug Tracker noreply at opencsw.org
Sun Dec 11 00:50:35 CET 2011


The following issue has been CLOSED 
====================================================================== 
https://www.opencsw.org/mantis/view.php?id=4275 
====================================================================== 
Reported By:                peff
Assigned To:                maciej
====================================================================== 
Project:                    gcc4core
Issue ID:                   4275
Category:                   packaging
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     closed
Resolution:                 open
Fixed in Version:           
====================================================================== 
Date Submitted:             2010-02-15 11:52 CET
Last Modified:              2011-12-11 00:50 CET
====================================================================== 
Summary:                    32-bit solaris 2.10 systems use solaris 2.8 includes
Description: 
Compiling any program with system headers fails on my 32-bit solaris 2.10
box fails. For example:

  $ echo '#include <sys/time.h>' >foo.c
  $ gcc -c foo.c
  In file included from
/opt/csw/gcc4/lib/gcc/i386-pc-solaris2.8/4.3.3/include-fixed/sys/types.h:574,
                   from /usr/include/sys/time.h:99,
                   from foo.c:1:
  /usr/include/sys/select.h:140: error: redefinition of parameter
‘_RESTRICT_KYWD’
  /usr/include/sys/select.h:140: error: previous definition of
‘_RESTRICT_KYWD’ was here

The problem is that /usr/include/sys/select.h is from solaris2.10, and
includes sys/feature_test.h, which is supposed to define _RESTRICT_KYWD.
However, we end up including
/opt/csw/gcc4/lib/gcc/i386-pc-solaris2.8/4.3.3/include-fixed/sys/feature_test.h,
which does not defined that macro.

The package seems to ship with a solaris2.10 compiler for amd64, but not
for i386. And on my machine:

  $ uname -a
  SunOS sol10 5.10 Generic_141445-09 i86pc i386 i86pc
  $ isainfo -b
  32
  $ gcc -v
  Using built-in specs.
  Target: i386-pc-solaris2.8
  Configured with: ../gcc-4.3.3/configure --prefix=/opt/csw/gcc4
--exec-prefix=/opt/csw/gcc4 --with-gnu-as --with-as=/opt/csw/bin/gas
--without-gnu-ld --with-ld=/usr/ccs/bin/ld --enable-nls
--with-included-gettext --with-libiconv-prefix=/opt/csw --with-x
--with-mpfr=/opt/csw --with-gmp=/opt/csw --enable-java-awt=xlib
--enable-libada --enable-libssp --enable-objc-gc --enable-threads=posix
--enable-stage1-languages=c --enable-languages=ada,c,c++,fortran,java,objc
  Thread model: posix
  gcc version 4.3.3 (GCC)


====================================================================== 

---------------------------------------------------------------------- 
 (0009465) maciej (manager) - 2011-12-11 00:50
 https://www.opencsw.org/mantis/view.php?id=4275#c9465 
---------------------------------------------------------------------- 
This is now fixed. The workaround was to build the 5.10 package on Solaris
10. Updated packages, gcc-4.6.2, are now in unstable.



More information about the bug-notifications mailing list