🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.g++.bug
Article #368

gcc-ld++ or gcc-as1.34 bug on Sun 3

#368
From: Tom Vijlbrief
Date: Wed, 23 Aug 1989 10:46
103 lines
3933 bytes
I found a bug in either gcc-ld++ or gas1.34.

The following program dumps core when assembled with gas,
but not when assembled with the sun as.

Deleting 'static' eliminates the problem.

I'm running this on a Sun 3/60 which has a debugging malloc package.
The assembler output differs, the assemblers use a different alignment:

Sun as:

00000088 T __GLOBAL_$I$t_c
         U ___builtin_new
000000a0 b _debug
00000002 C _gBlue_table
0000009c D _gColor_len
00000002 C _gGreen_table
00000002 C _gRed_table
00000054 T _main
         U _malloc
         U _malloc_debug
0000000a t _mydebug_PSmydebug
         U _write
00000000 t gcc_compiled.

gcc-as:

0000008a T __GLOBAL_$I$t_c
         U ___builtin_new
000000a4 b _debug
00000002 C _gBlue_table
000000a0 D _gColor_len
00000002 C _gGreen_table
00000002 C _gRed_table
00000056 T _main
         U _malloc
         U _malloc_debug
0000000a t _mydebug_PSmydebug
         U _write
00000000 t gcc_compiled.
===================t.c============================

class mydebug {
public:
  mydebug() { malloc_debug(2); write(2, "Running\n", 8); }
};

static mydebug debug;

main()
{
  malloc(36);
  malloc(38);
}
==============================
g++ t.c /usr/lib/debug/malloc.o -v
g++ version 1.35.0
 /usr/local/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -D__cplusplus -Dmc68000 -Dsun -Dunix -D__mc68000__ -D__sun__ -D__unix__ -D__HAVE_68881__ -Dmc68020 t.c /tmp/cca26492.cpp
GNU CPP version 1.35
 /usr/local/lib/gcc-cc1plus /tmp/cca26492.cpp -quiet -dumpbase t.c -noreg -version -o /tmp/cca26492.s
GNU C++ version 1.35.0 (68k, MIT syntax) compiled by GNU C version 1.35.
In method struct mydebug *mydebug::mydebug ():
t.c:3: warning: implicit declaration of function `malloc_debug'
t.c:3: warning: implicit declaration of function `write'
In function int main ():
t.c:10: warning: implicit declaration of function `malloc'
 /usr/local/lib/gcc-as -mc68020 /tmp/cca26492.s -o t.o
 /usr/local/lib/gcc-ld++ -C /usr/local/lib/crt0+.o /lib/Mcrt1.o t.o /usr/lib/debug/malloc.o -lg++ /usr/local/lib/gcc-gnulib -lc
tom@sunflare:~/src/CC> a.out
Running
Bad free list pointer (0x2090e)
 
IOT trap (core dumped)
========================
replace gcc-as with as:
===========================
tom@sunflare:~/src/CC> 
g++ t.c /usr/lib/debug/malloc.o -v
g++ version 1.35.0
 /usr/local/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -D__cplusplus -Dmc68000 -Dsun -Dunix -D__mc68000__ -D__sun__ -D__unix__ -D__HAVE_68881__ -Dmc68020 t.c /tmp/cca26499.cpp
GNU CPP version 1.35
 /usr/local/lib/gcc-cc1plus /tmp/cca26499.cpp -quiet -dumpbase t.c -noreg -version -o /tmp/cca26499.s
GNU C++ version 1.35.0 (68k, MIT syntax) compiled by GNU C version 1.35.
In method struct mydebug *mydebug::mydebug ():
t.c:3: warning: implicit declaration of function `malloc_debug'
t.c:3: warning: implicit declaration of function `write'
In function int main ():
t.c:10: warning: implicit declaration of function `malloc'
 as -mc68020 /tmp/cca26499.s -o t.o
 /usr/local/lib/gcc-ld++ -C /usr/local/lib/crt0+.o /lib/Mcrt1.o t.o /usr/lib/debug/malloc.o -lg++ /usr/local/lib/gcc-gnulib -lc
tom@sunflare:~/src/CC> a.out
Running
tom@sunflare:~/src/CC> 

===============================================================================
Tom Vijlbrief
TNO Institute for Perception
P.O. Box 23				Phone: +31 34 63 562 11
3769 ZG  Soesterberg			E-mail: tnosoes!tom@mcvax.cwi.nl
The Netherlands				    or:	uunet!mcvax!tnosoes!tom
===============================================================================
Technical Details
Message-ID: <477@tnosoes.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!watmath!uunet!mcsun!hp4nl!tnosoes!tom

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!watmath!uunet!mcsun!hp4nl!tnosoes!tom
From: tom@tnosoes.UUCP (Tom Vijlbrief)
Newsgroups: gnu.g++.bug
Subject: gcc-ld++ or gcc-as1.34 bug on Sun 3
Keywords: g++
Message-ID: <477@tnosoes.UUCP>
Date: 23 Aug 89 10:46:55 GMT
Organization: TNO Institute for Perception, Soesterberg, The Netherlands
Lines: 103