diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/stabsread.c | 15 |
2 files changed, 9 insertions, 10 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6d5a99a..b757255 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,7 +1,7 @@ Thu Mar 24 07:12:09 1994 Jim Kingdon (kingdon@lioth.cygnus.com) - * stabsread.c (patch_block_stabs): Don't create LOC_OPTIMIZED_OUT - symbols. Reverts change of 2 Apr 1993. + * stabsread.c (patch_block_stabs): Add comment about what happens + if the definition is in another compilation unit from the stab. * dbxread.c (end_psymtab): Add comment about empty psymtabs. diff --git a/gdb/stabsread.c b/gdb/stabsread.c index 6466e37..af486ff 100644 --- a/gdb/stabsread.c +++ b/gdb/stabsread.c @@ -399,13 +399,13 @@ patch_block_stabs (symbols, stabs, objfile) sym = find_symbol_in_list (symbols, name, pp-name); if (!sym) { -#if 0 - /* The following code is disabled because AIX's xlc also - puts out a stab but no C_EXT in the case where a - symbol is referenced but not defined (in that - compilation unit). So we just don't create a symbol, - and the user will get the symbol from the compilation - unit in which the symbol is actually defined. */ + /* FIXME-maybe: it would be nice if we noticed whether + the variable was defined *anywhere*, not just whether + it is defined in this compilation unit. But neither + xlc or GCC seem to need such a definition, and until + we do psymtabs (so that the minimal symbols from all + compilation units are available now), I'm not sure + how to get the information. */ /* On xcoff, if a global is defined and never referenced, ld will remove it from the executable. There is then @@ -433,7 +433,6 @@ patch_block_stabs (symbols, stabs, objfile) SYMBOL_TYPE (sym) = read_type (&pp, objfile); } add_symbol_to_list (sym, &global_symbols); -#endif /* 0 */ } else { |