From: steve@Robobar.Co.Uk (Steve Bleazard) Newsgroups: alt.sources,comp.unix.xenix Subject: GDB for Xenix 386 GCC: Part 6 of 4 Message-ID: <1990May10.132956.24366@robobar.co.uk> Date: 10 May 90 13:29:56 GMT Some one noticed, and told me in e-mail: > 1. > gdb gdb (gdb compiled on Xenix with gcc -g ) > gives the following error: > Reading symbol data from /u/morris/gnu/gdb/gdb...gdb: Internal error:\ > Unexpected debugging symbol type ',' at symnum 25798932 for which the fix is below. PS: AAAAAArrrrrrrgggggghhhhhhhhhh!!!!!!!!! #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create the files: # gdb-x386.04 # This archive created: Thu May 10 14:26:46 1990 # By: Steve Bleazard () export PATH; PATH=/bin:$PATH echo shar: extracting "'gdb-x386.04'" '(1300 characters)' if test -f 'gdb-x386.04' then echo shar: will not over-write existing file "'gdb-x386.04'" else sed 's/^X//' << \SHAR_EOF > 'gdb-x386.04' X*** dbxread.old Sat May 5 15:44:39 1990 X--- dbxread.c Thu May 10 14:19:08 1990 X*************** X*** 462,467 **** X--- 462,470 ---- X /* Count symbols as they are processed, for error messages. */ X X static int symnum; X+ #ifdef M_XENIX X+ static long lsym_count = 0; X+ #endif /* M_XENIX */ X X /* Vector of types defined so far, indexed by their dbx type numbers. X (In newer sun systems, dbx uses a pair of numbers in parens, X*************** X*** 1939,1945 **** X { X if (symbuf_idx == symbuf_end) X fill_symbuf (); X! symnum++; X return symbuf[symbuf_idx++].n_un.n_strx + stringtab_global; X } X X--- 1942,1948 ---- X { X if (symbuf_idx == symbuf_end) X fill_symbuf (); X! symnum++; lsym_count--; X return symbuf[symbuf_idx++].n_un.n_strx + stringtab_global; X } X X*************** X*** 2078,2084 **** X #endif X X #ifdef M_XENIX X- long lsym_count = 0; X long flsym_count = 0; X long file_string_base = 0; X long stringtab_offset = 0; X--- 2081,2086 ---- X*************** X*** 2142,2147 **** X--- 2144,2150 ---- X #ifdef M_XENIX X init_fileinfo_processing(); /* start processing the list of files */ X nlistlen += 10; /* force the hack code to terminate the loop */ X+ lsym_count = 0; X #endif /* M_XENIX */ X X for (symnum = 0; symnum < nlistlen; symnum++) SHAR_EOF if test 1300 -ne "`wc -c < 'gdb-x386.04'`" then echo shar: error transmitting "'gdb-x386.04'" '(should have been 1300 characters)' fi fi # end of overwriting check # End of shell archive exit 0 -- Steve.Bleazard@RoboBar.Co.Uk | Phone: +44 81 991 1142 x153 Snr Software Engineer, Robobar Ltd. | Fax: +44 81 998 8343 (G3) 22 Wadsworth Road, Perivale. | Middx., UB6 7JD ENGLAND. | ...!ukc!robobar!steve