[gnu.g++.bug] g++ 1.35 produce invalid assembly code

amanda@IESD.AUC.DK (Per Abrahamsen) (05/30/89)

g++ 1.35 compiled on a sun3/60 under SunOS4.0.1

Script started on Mon May 29 23:14:07 1989
23:14 amanda@aiken/~/tmp% cat err1.cc
struct t
{
    inline t() { }
};

static t x;
static t y = x;

% g++ -v err1.cc -S
g++ version 1.35.0
 /home/local/gnu/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -D__cplusplus -Dmc68000 -Dsun -Dunix -D__mc68000__ -D__sun__ -D__unix__ -D__HAVE_68881__ -Dmc68020 err1.cc /tmp/cca25132.cpp
GNU CPP version 1.35
 /home/local/gnu/lib/gcc-cc1plus /tmp/cca25132.cpp -quiet -dumpbase err1.cc -noreg -version -o err1.s
GNU C++ version 1.35.0 (68k, MIT syntax) compiled by GNU C version 1.35.
% as err1.s
as: error (err1.s:26): Multiply defined symbol
% cat err1.s
#NO_APP
gcc_compiled.:
.text
	.even
.globl __GLOBAL_$I$err1_cc
__GLOBAL_$I$err1_cc:
	link a6,#0
	movel d2,sp@-
	movel #_x,d2
	movel a6,d0
	tstl d2
	jne L7
	pea 2:w
	jbsr ___builtin_new
	movel d0,d2
	addqw #4,sp
L7:
	movel d2,d0
	movel d0,d1
	jra L6
L6:
L5:
	movel a6@(-4),d2
	unlk a6
	rts
.lcomm _y,2
.lcomm _y,2
% exit
exit

script done on Mon May 29 23:15:12 1989