aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/stabsread.c15
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
{