aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarfread.c
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1996-10-15 23:44:13 +0000
committerStu Grossman <grossman@cygnus>1996-10-15 23:44:13 +0000
commitac9548059b9ca25c3d990925a6b0602ae932637b (patch)
tree15619630645f4264f093b5351ee44cea36e3ae0c /gdb/dwarfread.c
parent254ef34062b2becfb0b47daa362ef636853dfa53 (diff)
downloadfsf-binutils-gdb-ac9548059b9ca25c3d990925a6b0602ae932637b.zip
fsf-binutils-gdb-ac9548059b9ca25c3d990925a6b0602ae932637b.tar.gz
fsf-binutils-gdb-ac9548059b9ca25c3d990925a6b0602ae932637b.tar.bz2
* buildsym.c (finish_block): Treat LOC_BASEREG_ARG and
LOC_LOCAL_ARG as arguments so that GDB will know about function args declared this way. Mostly affects dwarf. * dwarfread.c (decode_die_type): Change default type from int to void. This allows GDB to recognize void functions. * (new_symbol): If AT_PROTOTYPED is present, set a flag in the type structure. * findvar.c (extract_floating store_floating): Clean up comments to reflect reality. * gdbtypes.h: Add TYPE_FLAG_PROTOTYPED so that we can tell if a function has a prototype. Currently, only dwarf supports this. * utils.c (floatformat_from_doublest): Fix logic error with converting from double to float. (It wasn't shifting mant_long if it had a hidden bit.) * v850-tdep.c: Add support for function calling. Fix some problems with debugging code w/o debug symbols. * config/v850/tm-v850.h: Ditto.
Diffstat (limited to 'gdb/dwarfread.c')
-rw-r--r--gdb/dwarfread.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/dwarfread.c b/gdb/dwarfread.c
index 98ceb49..529f01b 100644
--- a/gdb/dwarfread.c
+++ b/gdb/dwarfread.c
@@ -964,7 +964,7 @@ decode_die_type (dip)
}
else
{
- type = dwarf_fundamental_type (current_objfile, FT_INTEGER);
+ type = dwarf_fundamental_type (current_objfile, FT_VOID);
}
return (type);
}
@@ -2957,6 +2957,8 @@ new_symbol (dip, objfile)
case TAG_subroutine:
SYMBOL_VALUE_ADDRESS (sym) = dip -> at_low_pc;
SYMBOL_TYPE (sym) = lookup_function_type (SYMBOL_TYPE (sym));
+ if (dip -> at_prototyped)
+ TYPE_FLAGS (SYMBOL_TYPE (sym)) |= TYPE_FLAG_PROTOTYPED;
SYMBOL_CLASS (sym) = LOC_BLOCK;
if (dip -> die_tag == TAG_global_subroutine)
{