[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Suggested workaround for a bug in Tru64Unix compiler
Please see the attachments.
--
Martin Mokrejs <mmokrejs@natur.cuni.cz>, <m.mokrejs@gsf.de>
PGP5.0i key is at http://www.natur.cuni.cz/~mmokrejs
MIPS / Institute for Bioinformatics <http://mips.gsf.de>
GSF - National Research Center for Environment and Health
Ingolstaedter Landstrasse 1, D-85764 Neuherberg, Germany
tel.: +49-89-3187 3683 , fax: +49-89-3187 3585
- To: compaq_cxx.bugs@compaq.com
- Subject: Compiler crash when -O2
- From: Martin MOKREJŠ <mmokrejs@natur.cuni.cz>
- Date: Thu, 4 Sep 2003 19:19:00 +0200 (CEST)
- In-Reply-To: <03071612182328@cxxc.zko.dec.com>
- References: <03071612182328@cxxc.zko.dec.com>
Hi,
I have the following problem:
Making all in rsh
make[2]: Entering directory `/usr/local/scratch/heimdal-20030904/appl/rsh'
cc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include -I../../lib/roken -I../../lib/roken -I./../login -I/software/@sys/usr/include -I/usr/local/include -I/usr/local/openssl/include -O2 -arch ev56 -c `test -f 'rsh.c' || echo './'`rsh.c
cc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include -I../../lib/roken -I../../lib/roken -I./../login -I/software/@sys/usr/include -I/usr/local/include -I/usr/local/openssl/include -O2 -arch ev56 -c `test -f 'common.c' || echo './'`common.c
Assertion failure: Compiler internal error - please submit problem report
GEM ASSERTION, Compiler internal error - please submit problem report
Terminated
make[2]: *** [common.o] Error 3
make[2]: Leaving directory `/usr/local/scratch/heimdal-20030904/appl/rsh'
[..]
$ cc -V
Compaq C V6.5-207 (dtk) on Compaq Tru64 UNIX V5.1A (Rev. 1885)
Compiler Driver V6.5-207 (dtk) (dtk) cc Driver
$ cc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include -I../../lib/roken -I../../lib/roken -I./../login -I/software/@sys/usr/include -I/usr/local/include -I/usr/local/openssl/include -O1 -arch ev56 -c `test -f 'common.c' || echo './'`common.c
$
So it is an optimizer bug.
You can get the sources at ftp://ftp.pdc.kth.se/pub/heimdal/src/snapshots/heimdal-20030904.tar.gz . After extraction, do:
./configure --without-krb4 --with-openssl=/usr/local/openssl --with-readline --with-x --enable-kaserver
I ran the compile commandline with -P argument. The generated common.i is
attached.
--
Martin Mokrejs <mmokrejs@natur.cuni.cz>, <m.mokrejs@gsf.de>
PGP5.0i key is at http://www.natur.cuni.cz/~mmokrejs
MIPS / Institute for Bioinformatics <http://mips.gsf.de>
GSF - National Research Center for Environment and Health
Ingolstaedter Landstrasse 1, D-85764 Neuherberg, Germany
tel.: +49-89-3187 3683 , fax: +49-89-3187 3585
common.i.gz
The problem reduces to the following. As you can see the crash is in function
init_ivecs. I believe you can work around this by creating a new variable called
"not_client" and replacing the "!client" on the call to memset.
This should be fixed in the next release of the compiler. If you need a fix
sooner or need more assistance and have a support contract, please contact HP
Support. This problem is being tracked as cxxc_bugs10348.
--------------------------------------------------------------------------
cxxosf.zko.dec.com> cc -c common.i -O
Assertion failure: Compiler internal error - please submit problem report
GEM ASSERTION, Compiler internal error - please submit problem report
Terminated
cxxosf.zko.dec.com> cat common.i
#include <string.h>
char buff1[11],buff2[11];
void *ivec_out[2] = { buff1, buff2 };
void
init_ivecs(int client)
{
int block_size = 10;
memset(ivec_out[0], !client, block_size);
}
Please send all Compaq C/C++ Support requests to compaq_cxx.bugs@compaq.com
Reply to this message for further correspondence regarding THIS support
request. Thank you for choosing Compaq C/C++.