This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: c++/8183: ICE when compiling classes with virtual base class on sparc64-sun-solaris2.8


The following reply was made to PR c++/8183; it has been noted by GNATS.

>From c.christian.joensson@telia.com  Mon Jan 13 00:57:13 2003
From: =?iso-8859-1?Q?Christian_J=F6nsson?= <c.christian.joensson@telia.com>
To: Robert Schiele <rschiele@uni-mannheim.de>
Cc: =?iso-8859-1?Q?Christian_J=F6nsson?= <c.christian.joensson@telia.com>,
   gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org,
   ghazi@caip.rutgers.edu
Subject: Re: c++/8183: ICE when compiling classes with virtual base class on sparc64-sun-solaris2.8
Date: Sat, 11 Jan 2003 09:39:38 +0100

 On Thu, Jan 09, 2003 at 02:02:33PM +0100, Robert Schiele wrote:
 > On Thu, Jan 09, 2003 at 01:12:24PM +0100, Christian J=F6nsson wrote:
 > > however, if I just build the compiler, i.e., not doing a bootstrap, I d=
 o=20
 > > not get the ICE.
 >=20
 > Well, this is perfectly clear, because if you just built the compiler,
 > you didn't compile anything with such a class construction, as the
 > compiler is written in C, not C++.
 
 well, "make" does build both the compiler and the support libraries,
 such as the libstdc++-v3 that contains the complex_io.cc file... there
 it's an ICE...
 
 =20
 > But I would expect the such built compiler to also fail building my
 > test case, doesn't it?
 
 Sure does.
 =20
 > > So, I wonder what the analysis is?
 >=20
 > I can't say very much about that, but it seems so that there is
 > something broken in the C++ frontend on 64 bit systems.  I assume some
 > false assumptions about size of specific data types that are only
 > correct on some platforms.
 >=20
 > I don't have tried on other 64 bit platforms, but for Solaris I can
 > say that I am able to build both 32 and 64 bit versions of the
 > testcase successfully with the compiler built itself in 32 bit mode.
 > But with a compiler built in 64 bit mode, the bug is triggered
 > independent of the target being 32 or 64 bit.
 
 Likewise here, building for sparc-linux gets me a through, but not for
 sprac64-linux.
 
 I just tried the cvs main trunk, now 3.4 (experimental), and it's
 still there. A bootstrap gets me here:
 
 chj@u1sparc:/usr/local/src/gcc-binutils/trunk/objdir$ /usr/local/src/gcc-bi=
 nutils/trunk/objdir/gcc/xgcc -shared-libgcc -B/usr/local/src/gcc-binutils/t=
 runk/objdir/gcc/ -nostdinc++ -L/usr/local/src/gcc-binutils/trunk/objdir/spa=
 rc64-linux/32/libstdc++-v3/src -L/usr/local/src/gcc-binutils/trunk/objdir/s=
 parc64-linux/32/libstdc++-v3/src/.libs -B/usr/local/gcc-binutils/sparc64-li=
 nux/bin/ -B/usr/local/gcc-binutils/sparc64-linux/lib/ -isystem /usr/local/g=
 cc-binutils/sparc64-linux/include -L/usr/local/src/gcc-binutils/trunk/objdi=
 r/ld -m32 -nostdinc++ -I/usr/local/src/gcc-binutils/trunk/objdir/sparc64-li=
 nux/32/libstdc++-v3/include/sparc64-linux -I/usr/local/src/gcc-binutils/tru=
 nk/objdir/sparc64-linux/32/libstdc++-v3/include -I/usr/local/src/gcc-binuti=
 ls/trunk/gcc-binutils/libstdc++-v3/libsupc++ -I/usr/local/src/gcc-binutils/=
 trunk/gcc-binutils/libstdc++-v3/libmath -g -O2 -D_GNU_SOURCE -m32 -fno-impl=
 icit-templates -Wall -Wno-format -W -Wwrite-strings -Winline -fdiagnostics-=
 show-location=3Donce -ffunction-sections -fdata-sections -c /usr/local/src/=
 gcc-binutils/trunk/gcc-binutils/libstdc++-v3/src/complex_io.cc  -fPIC -DPIC=
  -o .libs/complex_io.o
 
 In file included from /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linu=
 x/32/libstdc++-v3/include/sstream:635,
                  from /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linu=
 x/32/libstdc++-v3/include/complex:51,
                  from /usr/local/src/gcc-binutils/trunk/gcc-binutils/libstd=
 c++-v3/src/complex_io.cc:30:
 /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc++-v3/incl=
 ude/iosfwd: In instantiation of `std::basic_iostream<char, std::char_traits=
 <char> >':
 /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc++-v3/incl=
 ude/bits/sstream.tcc:231:   instantiated from `std::basic_stringstream<char=
 , std::char_traits<char>, std::allocator<char> >'
 /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc++-v3/incl=
 ude/bits/sstream.tcc:231:   instantiated from here
 /usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc++-v3/incl=
 ude/iosfwd:64: internal compiler error: in
    lookup_base_r, at cp/search.c:283
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
 chj@u1sparc:/usr/local/src/gcc-binutils/trunk/objdir$ chj@u1sparc:/usr/loca=
 l/src/gcc-binutils/trunk/objdir$ /usr/local/src/gcc-binutils/trunk/objdir/g=
 cc/xgcc -shared-libgcc -B/usr/local/src/gcc-binutils/trunk/objdir/gcc/ -nos=
 tdinc++ -L/usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc=
 ++-v3/src -L/usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libst=
 dc++-v3/src/.libs -B/usr/local/gcc-binutils/sparc64-linux/bin/ -B/usr/local=
 /gcc-binutils/sparc64-linux/lib/ -isystem /usr/local/gcc-binutils/sparc64-l=
 inux/include -L/usr/local/src/gcc-binutils/trunk/objdir/ld -m32 -nostdinc++=
  -I/usr/local/src/gcc-binutils/trunk/objdir/sparc64-linux/32/libstdc++-v3/i=
 nclude/sparc64-linux -I/usr/local/src/gcc-binutils/trunk/objdir/sparc64-lin=
 ux/32/libstdc++-v3/include -I/usr/local/src/gcc-binutils/trunk/gcc-binutils=
 /libstdc++-v3/libsupc++ -I/usr/local/src/gcc-binutils/trunk/gcc-binutils/li=
 bstdc++-v3/libmath -g -O2 -D_GNU_SOURCE -m32 -fno-implicit-templates -Wall =
 -Wno-format -W -Wwrite-strings -Winline -fdiagnostics-show-location=3Donce =
 -ffunction-sections -fdata-sections -c ~/ice.ii  -fPIC -DPIC -o /tmp/out.o=
 =20
 /home/chj/ice.ii:4: internal compiler error: in lookup_base_r, at cp/search=
 .c:
    283
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
 chj@u1sparc:/usr/local/src/gcc-binutils/trunk/objdir$=20
 
 This was on a Aurora SPARC Linux 0.42 build (Douglas) Ultra1
 sun4u system with these packages:
 
 binutils 2.13.1 20021207 sparc64-linux
 bison-1.35-1
 dejagnu-1.4.2-3
 expect-5.32.2-67
 gcc 3.2.2 20021204 (prerelease) sparc64-linux
 glibc-2.2.5-42
 glibc64-2.2.5-42
 kernel-2.4.19-1.2sparc
 tcl-8.3.3-67
 
 In-tree joined gcc and binutils cvs trunks.
 
 LAST_UPDATED: Fri Jan 10 15:24:38 UTC 2003
 
 #! /bin/sh
 # Generated automatically by configure.
 # Run this file to recreate the current configuration.
 # This directory was configured as follows,
 # on host u1sparc.j-son.org:
 #
 # /usr/local/src/gcc-binutils/trunk/gcc-binutils/configure  sparc64-linux -=
 -prefix=3D/usr/local/gcc-binutils --enable-shared --enable-threads=3Dposix =
 --with-gcc-version-trigger=3D/usr/local/src/gcc-binutils/trunk/gcc-binutils=
 /gcc/version.c
 #
 # Compiler output produced by configure, useful for debugging
 # configure, is in ./config.log if it exists.
 
 
 Cheers,
 
 /ChJ


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]