🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #1040

gcc 2.2.2 and abort()

#1040
From: Walter Hunt
Date: Wed, 02 Sep 1992 00:28
63 lines
2693 bytes
@	I recently compiled up gcc 2.2.2 for my machine, with the
    intent of doing some C++ programming. While compiling, I found one
    of the files in my distribution to be corrupted. There may have
    been further corruptions, but if there were, they resulted in
    valid 'C' code since a "make bootstrap" completed fine. This may
    or may not have anything to do with my results.

	I then retrieved libg++-2.0, in order to have some basic C++
    classes. While attempting to compile it, gcc (actually cc1plus)
    bombed out with an abort at line 207 of file cp-tree.c. (Like so:

(gdb) run
Starting program: /usr/local/lib/gcc-lib/sun4/2.2.2/cc1plus /usr/tmp/cca28407.i -quiet -dumpbase BitSet.cc -version -o /usr/tmp/cca28407.s
GNU C++ version 2.2.2 (sparc) compiled by GNU C version 2.2.2.

Program received signal 6, Abort
0xf775c120 in kill ()
(gdb) where
#0  0xf775c120 in kill ()
#1  0xf777447c in abort ()
#2  0x3a7b8 in break_out_calls (exp=0x1770b8) at cp-tree.c:207
#3  0x3a7e0 in break_out_calls (exp=0x1770c8) at cp-tree.c:217
#4  0x3a848 in break_out_calls (exp=0x1770e8) at cp-tree.c:234
#5  0x3464c in build_modify_expr (lhs=0x1770e8, modifycode=NOP_EXPR, 
    rhs=0x1770a8) at cp-typeck.c:5157
#6  0xe894 in yyparse () at cp-parse.y:1211
#7  0x7b9c0 in compile_file (name=0xf7fff992 "/usr/tmp/cca28407.i")
    at toplev.c:1638
#8  0x7e584 in main (argc=8, argv=0xf7fff8e4, envp=0xf7fff908) at toplev.c:3055
(gdb) 


	After some quick #if 0's, I determined that the line that was
    making it croak was line 768 of BitSettoa.cc, which contained:

      *fmt++ = (a & 1)? t : f;

	Changing the line (and two more just like it in the same
    routine) to either of:

      if (a & 1) *fmt++ = t;
      else *fmt++ = f;

	or

      *fmt = (a & 1)? t : f;
      fmt++;

	would compile fine.


	Does this happen with the "official" 2.2.2 (i.e. do I have a
    improperly built version)? Any chance of getting on a mailing list
    for patches?

	If it matters, I got all my sources from a uunet tape,
    purchased a couple months ago.


Walter Hunt					walter@optimage.com
OptImage Interactive Services Company, L.P.	walter@aimla.com
11040 Santa Monica Blvd., Suite #300		uunet!{optimage,aimla}!walter
Los Angeles, Ca. 90025				(310) 445-5718
Technical Details
Message-ID: <9209020028.AA28547@galena.AIM.Com>
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!galena.UUCP!walter

Show Full Headers
Complete Article Headers
Newsgroups: gnu.gcc.bug
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!galena.UUCP!walter
From: walter@galena.UUCP (Walter Hunt)
Subject: gcc 2.2.2 and abort()
Message-ID: <9209020028.AA28547@galena.AIM.Com>
Sender: gnulists@ai.mit.edu
Organization: GNUs Not Usenet
Distribution: gnu
Date: Wed, 2 Sep 1992 00:28:42 GMT
Approved: bug-gcc@prep.ai.mit.edu
Lines: 64