From: Nick B. <ni...@sg...> - 2005-11-10 01:15:06
|
gcc -g -O2 -I. -I. -I./../libdwarf -c -o dwarfdump.o dwarfdump.c gcc -g -O2 -I. -I. -I./../libdwarf -c -o print_sections.o print_sections.c gcc -g -O2 -I. -I. -I./../libdwarf -c -o print_die.o print_die.c gcc -g -O2 -I. -I. -I./../libdwarf -c -o print_reloc.o print_reloc.c gcc -g -O2 -I. -I. -I./../libdwarf -c -o dwarf_names.o dwarf_names.c gcc -g -O2 -I. -I. -I./../libdwarf -c -o makename.o makename.c gcc -g -O2 -I. -I. -I./../libdwarf -o dwarfdump tag_tree_table.o tag_attr_table.o dwarfdump.o print_sections.o print_die.o print_reloc.o dwarf_names.o makename.o -L../libdwarf -ldwarf -lelf gcc -g -O2 -I. -I. -I./../libdwarf -c -o dwarfextract.o dwarfextract.c dwarfextract.c:3948:25: invalid suffix "MAX" on floating constant dwarfextract.c: In function `do_reference_translations': dwarfextract.c:3948: error: parse error before numeric constant make[1]: *** [dwarfextract.o] Error 1 make[1]: Leaving directory `/home/nickb/isms/lcrash/lkcd/7.X.X/lkcdutils/dwarf/dwarfdump' make: *** [subdirs_make] Error 2 The code in question just looks wrong: /* on this warning, better check the types we choose in is_type_we_want */ printf ( "cannot translate reference to 0 (0 file 0); ", rp1, rp1/FMAX, rp1 0.000000MAX); printf ("making it reference long int\n"); Not sure what we are trying to achieve there, but we have arguments to a printf while the format string has no format specifiers! I would suggest this change: $ cvs diff -u PATCHES/dwarf-dwarfextract.patch Index: PATCHES/dwarf-dwarfextract.patch =================================================================== RCS file: /cvsroot/lkcd/lkcd/7.X.X/lkcdutils/PATCHES/dwarf-dwarfextract.patch,v retrieving revision 1.1 diff -u -r1.1 dwarf-dwarfextract.patch --- PATCHES/dwarf-dwarfextract.patch 9 Nov 2005 21:51:27 -0000 1.1 +++ PATCHES/dwarf-dwarfextract.patch 10 Nov 2005 01:14:04 -0000 @@ -3946,10 +3946,6 @@ + } else { + /* on this warning, better check the types + we choose in is_type_we_want */ -+ printf ( -+ "cannot translate reference to 0 (0 file 0); ", -+ rp1, rp1/FMAX, rp1 0.000000MAX); -+ printf ("making it reference long int\n"); + aresult = dwarf_add_AT_reference(newdbg, dp1, + DW_AT_type, common_base_type_die, + &error); Unless someone understands what the printf SHOULD look like! Nick |