🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by James Clark Mon, 13 Mar 1989 17:05
g++ 1.34.0 outputs invalid symbol table
#1731
Author: James Clark
Date: Mon, 13 Mar 1989 17:05
79 lines
2978 bytes
G++ 1.34.0 seems to output an invalid symbol table.
I'm using a copy of g++ which I uucp'ed from osu-cis on Mar 11.

Script started on Mon Mar 13 16:45:43 1989
jclark% cat bug.c

struct foo {
  enum { A, B, C, D } n;
};

jclark% g++ -g -v -S bug.c
g++ version 1.34.0
 /usr/local/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ bug.c /tmp/cca07197.cpp
GNU CPP version 1.34
 /usr/local/lib/gcc-c++ /tmp/cca07197.cpp -quiet -dumpbase bug.c -g -version -o bug.s
GNU C++ version 1.34.0 (sparc) compiled by GNU C version 1.34.
jclark% cat bug.s
gcc_compiled.:
	.stabs "bug.c",100,0,0,Ltext
Ltext:
.stabs "int:t1=r1;-2147483648;2147483647;",128,0,0,0
.stabs "char:t2=r2;0;127;",128,0,0,0
.stabs "long int:t3=r1;-2147483648;2147483647;",128,0,0,0
.stabs "unsigned int:t4=r1;0;-1;",128,0,0,0
.stabs "long unsigned int:t5=r1;0;-1;",128,0,0,0
.stabs "short int:t6=r1;-32768;32767;",128,0,0,0
.stabs "long long int:t7=r1;0;-1;",128,0,0,0
.stabs "short unsigned int:t8=r1;0;65535;",128,0,0,0
.stabs "long long unsigned int:t9=r1;0;-1;",128,0,0,0
.stabs "signed char:t10=r1;-128;127;",128,0,0,0
.stabs "unsigned char:t11=r1;0;255;",128,0,0,0
.stabs "float:t12=r1;4;0;",128,0,0,0
.stabs "double:t13=r1;8;0;",128,0,0,0
.stabs "long double:t14=r1;8;0;",128,0,0,0
.stabs "void:t15=15",128,0,0,0
.stabs "unknown type:t16=16",128,0,0,0
.stabs "$_0:T17=eD:3,C:2,B:1,A:0,;",128,0,0,0
.stabs "foo:T18=s4A:/217B:/217C:/217D:/217n:/217,0,32;;~;",128,0,0,0
.stabs "$_0:t17",128,0,0,0
.stabs "foo:t18",128,0,0,0
jclark% exit
jclark% 
script done on Mon Mar 13 16:46:17 1989

The line

.stabs "foo:T18=s4A:/217B:/217C:/217D:/217n:/217,0,32;;~;",128,0,0,0

is invalid.

The following patch seems to keep gdb happy.

*** dbxout.c.old	Mon Mar 13 16:14:31 1989
--- dbxout.c	Mon Mar 13 16:44:15 1989
***************
*** 431,435 ****
  	   of each field.  */
  	/* Omit here the nameless fields that are used to skip bits.  */
! 	if (DECL_NAME (tem) != 0)
  	  {
  	    /* Continue the line if necessary,
--- 433,438 ----
  	   of each field.  */
  	/* Omit here the nameless fields that are used to skip bits.  */
! 	/* Omit also CONST_DECL. */
! 	if (DECL_NAME (tem) != 0 && TREE_CODE (tem) != CONST_DECL)
  	  {
  	    /* Continue the line if necessary,
***************
*** 465,472 ****
  		    fprintf (asmfile, ",0,0;");
  		  }
- 	      }
- 	    else if (TREE_CODE (tem) == CONST_DECL)
- 	      {
- 		/* How do we do this?  */
  	      }
  	    else
--- 468,471 ----
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads