> -----Original Message-----
> From: Nelson H. F. Beebe [mailto:beebe@xxxxxxxxxxxxx]
> Sent: Saturday, April 28, 2001 3:35 PM
> To: lia64-sim@xxxxxxxxxxxxxxxxx; pro64-support@xxxxxxxxxxx;
> gcc-bugs@xxxxxxxxxxx
> Cc: beebe@xxxxxxxxxxxxx
> Subject: C++ compiler assertion errors
> % c++ -fno-implicit-templates -O2 -ansi -I.
> -I./../include -I./../generic \
> -DSP_HAVE_BOOL -DSP_ANSI_CLASS_INST
> -DSP_MULTI_BYTE -c parseMode.cxx
> parseMode.cxx: In method `void Parser::compileModes
> (const Mode *, int, const Dtd *)':
> parseMode.cxx:403: Internal compiler error in
> `scan_region', at except.c:2757
> Please submit a full bug report.
> See
> <URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for
> instructions.
>
This is clearly a frontend error, with full instruction on how to report bug
> % sgiCC -ansi -I. -I./../include -I./../generic
> -DSP_HAVE_BOOL \
> -DSP_ANSI_CLASS_INST -DSP_MULTI_BYTE -c ParserApp.cxx
> ### Assertion failure at line 1164 of ../../g++fe/wfe_decl.cxx:
> ### Compiler Error during Writing WHIRL file phase:
> ### unexpected tree code ptrmem_cst
> sgiCC INTERNAL ERROR:
> /usr/lib/gcc-lib/ia64-sgi-linux/sgicc-1.0/gfecc returned
> non-zero status 1
>
This is a bug in translating gccIR to Whirl. Bug is at SGI's court. I
suggest
you cpp the source, reduce that to, hopefully a minimum, test case. I'm sure
Murthy will get to it very quickly.
> Attempts to switch compilers allow the compilations to proceed, but
> unresolved references at link time prevent completion of the builds.
>
> When I attempt a build without -DSP_ANSI_CLASS_INST, I get another
> failure:
>
> % g++ -I. -I./../include -DSP_HAVE_BOOL
> -DSP_MULTI_BYTE -o nsgmls \
> nsgmls.o SgmlsEventHandler.o RastEventHandler.o
> StringSet.o \
> nsgmls_inst.o ../lib/libsp.a -lm
> nsgmls.o: In function
> `XRastEventHandler::XRastEventHandler(SgmlParser *, char
> const *, String<unsigned short> const &, OutputCodingSystem
> const *, CmdLineApp *, Messenger *)':
> nsgmls.o(.text+0x25b2): undefined reference to
> `ErrnoMessageArg::ErrnoMessageArg(int)'
> nsgmls.o: In function `XRastEventHandler::truncateOutput(void)':
> nsgmls.o(.text+0x2d82): undefined reference to
> `ErrnoMessageArg::ErrnoMessageArg(int)'
> nsgmls.o(.text+0x3072): undefined reference to
> `ErrnoMessageArg::ErrnoMessageArg
>
> This failure is peculiar, because the preprocessed code shows that the
> missing function is indeed defined as a public inline member function
> (after prettyprinting with "astyle --style=ansi"):
>
I've seen these kind of failures when there is inconsistent optimize options
used that does not ended up inlining all functions as intended.
> % sgiCC -I.
> -I/nue/local/build/groff-1.16.1/src/utils/addftinfo \
> -I/nue/local/build/groff-1.16.1/src/include \
> -I/nue/local/build/groff-1.16.1/src/include
> -DHAVE_STDLIB_H=1 \
> -DHAVE_UNISTD_H=1 -DHAVE_DIRENT_H=1 -DHAVE_LIMITS_H=1 \
> -DHAVE_SYS_DIR_H=1 -DHAVE_STRING_H=1
> -DHAVE_STRINGS_H=1 \
> -DHAVE_MATH_H=1 -DRET_TYPE_SRAND_IS_VOID=1
> -DHAVE_SYS_NERR=1 \
> -DHAVE_SYS_ERRLIST=1 -DHAVE_CC_LIMITS_H=1
> -DRETSIGTYPE=void \
> -DHAVE_STRUCT_EXCEPTION=1 -DHAVE_UNISTD_H=1
> -DHAVE_GETPAGESIZE=1 \
> -DHAVE_FMOD=1 -DHAVE_STRTOL=1 -DHAVE_GETCWD=1
> -DHAVE_STRERROR=1 \
> -DHAVE_PUTENV=1 -DHAVE_RENAME=1
> -DHAVE_MKSTEMP=1 -DHAVE_STRCASECMP=1 \
> -DHAVE_STRNCASECMP=1 -DHAVE_STRSEP=1 -DHAVE_STRDUP=1 \
> -DSYS_SIGLIST_DECLARED=1 -g -O1 -c addftinfo.cc
>
> ### Assertion failure at line 1164 of ../../g++fe/wfe_decl.cxx:
> ### Compiler Error during Writing WHIRL file phase:
> ### unexpected tree code ptrmem_cst
> sgiCC INTERNAL ERROR:
> /usr/lib/gcc-lib/ia64-sgi-linux/sgicc-1.0/gfecc returned
> non-zero status 1
Sounds line the same gccIR to Whirl translation assertion.
Sun
|