schwarze@UUNET.UU.NET (Jochen Schwarze) (08/08/89)
G++ 1.35.0. Bug Report
VERSION:
g++ 1.35.0
CONFIGURATION:
config++ sun3-os4
DESCRIPTION:
g++ obviously cannot handle doubly indexed arrays of classes
that have a constructor function defined but dumps core instead.
The error does not occur if the constructor function is removed
from the class or the array is made simply indexed. Making the
constructor function only a dummy one (class() {}) will not
help. Using the -O option will not, either.
REPEAT BY:
Compile the following:
class vector
{
int a[ 4 ];
public:
vector() { }
};
vector table[ 8 ][ 16 ];
main() { }
g++ dumps core, exiting with:
In function void _GLOBAL_$I$foo_cc ():
foo.cc:10: Segmentation violation
g++: Program cc1plus got fatal signal 11.
The core file (dbx) then reads:
expand_aggr_init(exp = 0xf4620, init = (nil), alias_this = 0, \
0xf3ae0, 0xa), line 748 in "cplus-init.c"
finish_file(), line 1115 in "cplus-decl.c"
yyparse(0xf3ae0), line 189 in "bison.simple"
compile_file(name = 0xefffa90 "/tmp/cca26002.cpp"), \
line 1160 in "toplev.c"
main(argc = 8, argv = 0xefff9f8, envp = 0xefffa1c), \
line 2068 in "toplev.c"
--
Jochen Schwarze
ISA GmbH
Azenbergstr. 35
7000 Stuttgart 1
West Germany
Phone +49-711-22769-0
Domain: schwarze@isaak.isa.de
UUCP: schwarze@isaak.uucp
BITNET: schwarze%isaak.uucp@unido.bitnet