Thread View: gnu.gcc.bug
1 messages
1 total messages
Started by Kevin Rodgers
Wed, 05 Aug 1992 18:24
Sun dbx can't grok libgcc2.c stabs
Author: Kevin Rodgers
Date: Wed, 05 Aug 1992 18:24
Date: Wed, 05 Aug 1992 18:24
166 lines
7118 bytes
7118 bytes
I suspect this problem is the one concerning structure tags in DBX
output that's mentioned in the 'Actual Bugs We Haven't Fixed Yet' info
node, but since the 'Interoperation' node implies that there are other
problems with the DBX format, I thought I'd pass this along in case it
helps.
Version: 2.2.2
Configuration: --target=sun4
Machine: Sun SPARCstation SLC
OS: Sun OS 4.1.1
Symptom: When a C source file is compiled with the -g option to produce
an executable, and Sun's dbx is invoked on the executable, it produces
this output:
Reading symbolic information...
dbx: internal error:
Your executable file contains corrupt symbol information:
The debugger expected to find char '=', but found char '<nul>'.
This problem originated in compilation, assembly, archiving, or linking.
Rebuilding your program often clears this problem.
To investigate further, try shell command nm(2) to see symbols:
nm -opa yourprog >somefile
'yourprog' is your executable file or object file or archive.
Edit somefile, and search for ''.
Debugger unable to proceed.
recompile, reassemble, rearchive, or relink, and try again.
when processing stabs from source /usr/local/gnu/gcc/./libgcc2.c in hello
[end of 'dbx' output]
The 'nm -pa' output follows, as well as the 'gcc -E' output. When I ran
gdb 4.6 on the executable and tried to ptype each LSYM type, there were
several errors: (1) the long unsigned int, short unsigned int, long long
unsigned int, long double, long unsigned int, and long double types all
caused a "parse error" message; and (2) the reg_class and longlong types
caused a "No symbol ... in current context" error, unless enum reg_class
and struct longlong were ptype'd instead.
'nm -pa' output:
00004000 d __DYNAMIC
00002020 t crt0.o
00002290 t hello.o
00002290 t gcc2_compiled.
00002290 - 00 0000 SO /home/rolling_stone/kevin/
00002290 - 00 0000 SO hello.c
00000000 - 00 0000 LSYM int:t1=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM char:t2=r2;0;127;
00000000 - 00 0000 LSYM long int:t3=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM unsigned int:t4=r1;0;-1;
00000000 - 00 0000 LSYM long unsigned int:t5=r1;0;-1;
00000000 - 00 0000 LSYM short int:t6=r1;-32768;32767;
00000000 - 00 0000 LSYM long long int:t7=r1;0;-1;
00000000 - 00 0000 LSYM short unsigned int:t8=r1;0;65535;
00000000 - 00 0000 LSYM long long unsigned int:t9=r1;0;-1;
00000000 - 00 0000 LSYM signed char:t10=r1;-128;127;
00000000 - 00 0000 LSYM unsigned char:t11=r1;0;255;
00000000 - 00 0000 LSYM float:t12=r1;4;0;
00000000 - 00 0000 LSYM double:t13=r1;8;0;
00000000 - 00 0000 LSYM long double:t14=r1;8;0;
00000000 - 00 0000 LSYM void:t15=15
00002298 - 00 0002 SLINE
000022a4 - 00 0003 SLINE
000022b4 - 00 0004 SLINE
000022b4 - 00 0004 SLINE
00002298 - 00 0000 FUN main:F1
00000014 - 00 0000 LBRAC
00000024 - 00 0000 RBRAC
000022c0 t __main.o
000022c0 t gcc2_compiled.
000040b4 d _initialized.6
000022c0 - 00 0000 SO /usr/local/gnu/gcc/
000022c0 - 00 0000 SO ./libgcc2.c
00000000 - 00 0000 LSYM int:t1=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM char:t2=r2;0;127;
00000000 - 00 0000 LSYM long int:t3=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM unsigned int:t4=r1;0;-1;
00000000 - 00 0000 LSYM long unsigned int:t5=r1;0;-1;
00000000 - 00 0000 LSYM short int:t6=r1;-32768;32767;
00000000 - 00 0000 LSYM long long int:t7=r1;0;-1;
00000000 - 00 0000 LSYM short unsigned int:t8=r1;0;65535;
00000000 - 00 0000 LSYM long long unsigned int:t9=r1;0;-1;
00000000 - 00 0000 LSYM signed char:t10=r1;-128;127;
00000000 - 00 0000 LSYM unsigned char:t11=r1;0;255;
00000000 - 00 0000 LSYM float:t12=r1;4;0;
00000000 - 00 0000 LSYM double:t13=r1;8;0;
00000000 - 00 0000 LSYM long double:t14=r1;8;0;
00000000 - 00 0000 LSYM void:t15=15
00000000 - 00 0000 LSYM reg_class:T16=eNO_REGS:0,GENERAL_REGS:1,FP_REGS:2,ALL_REGS:3,LIM_REG_CLASSES:4,;
00000000 - 00 0000 LSYM ptrdiff_t:t1
00000000 - 00 0000 LSYM size_t:t1
00000000 - 00 0000 LSYM wchar_t:t8
00000000 - 00 0000 LSYM longlong:T17=s8high:3,0,32;low:3,32,32;;
00000000 - 00 0000 LSYM long_long:t18=u8s:17,0,64;ll:7,0,64;;
00000000 - 00 0000 LSYM long_long:T18
00000000 - 00 0000 LSYM func_ptr:t19=*20=f15
000022c0 - 00 0000 FUN __do_global_dtors:F15
00000000 - 00 0000 GSYM _exit_dummy_ref:G21=*1
00002338 - 00 0000 FUN __do_global_ctors:F15
00002384 - 00 0000 FUN __main:F15
000023b0 t _exit.o
000023b0 t gcc2_compiled.
000023b0 - 00 0000 SO /usr/local/gnu/gcc/
000023b0 - 00 0000 SO ./libgcc2.c
00000000 - 00 0000 LSYM int:t1=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM char:t2=r2;0;127;
00000000 - 00 0000 LSYM long int:t3=r1;-2147483648;2147483647;
00000000 - 00 0000 LSYM unsigned int:t4=r1;0;-1;
00000000 - 00 0000 LSYM long unsigned int:t5=r1;0;-1;
00000000 - 00 0000 LSYM short int:t6=r1;-32768;32767;
00000000 - 00 0000 LSYM long long int:t7=r1;0;-1;
00000000 - 00 0000 LSYM short unsigned int:t8=r1;0;65535;
00000000 - 00 0000 LSYM long long unsigned int:t9=r1;0;-1;
00000000 - 00 0000 LSYM signed char:t10=r1;-128;127;
00000000 - 00 0000 LSYM unsigned char:t11=r1;0;255;
00000000 - 00 0000 LSYM float:t12=r1;4;0;
00000000 - 00 0000 LSYM double:t13=r1;8;0;
00000000 - 00 0000 LSYM long double:t14=r1;8;0;
00000000 - 00 0000 LSYM void:t15=15
00000000 - 00 0000 LSYM reg_class:T16=eNO_REGS:0,GENERAL_REGS:1,FP_REGS:2,ALL_REGS:3,LIM_REG_CLASSES:4,;
00000000 - 00 0000 LSYM ptrdiff_t:t1
00000000 - 00 0000 LSYM size_t:t1
00000000 - 00 0000 LSYM wchar_t:t8
00000000 - 00 0000 LSYM longlong:T17=s8high:3,0,32;low:3,32,32;;
00000000 - 00 0000 LSYM long_long:t18=u8s:17,0,64;ll:7,0,64;;
00000000 - 00 0000 LSYM long_long:T18
00000000 - 00 0000 LSYM func_ptr:t19=*20=f15
00000000 - 00 0000 GSYM _exit_dummy_decl:G1
00000000 - 00 0000 GSYM __CTOR_LIST__:G21=ar1;0;1;19
00000000 - 00 0000 GSYM __DTOR_LIST__:G21
000023b0 t -lg
000023b0 - 00 0000 SO libg.s
000023b0 - 00 ffff SLINE
000026a8 T _etext
000040c0 D _edata
000040d0 B _end
00002020 T start
00002298 T _main
000040a8 D _environ
00002384 T ___main
000040b8 D __exit_dummy_decl
000040c0 B ___CTOR_LIST__
000040c8 B ___DTOR_LIST__
00002338 T ___do_global_ctors
000022c0 T ___do_global_dtors
000040b0 D __exit_dummy_ref
[end of 'nm -pa' output]
Command line: gcc -o hello -g hello.c
'gcc -E' output:
# 1 "hello.c"
main()
{
printf("Hello\n");
}
[end of 'gcc -E' output]
Kevin Rodgers kevin@traffic.den.mmc.com
Martin Marietta MS A16401 (303) 790-3971
116 Inverness Dr. East
Englewood CO 80112 USA GO BUFFS!
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