From f8302a575394d045db014d182246a66e0e404d44 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Wed, 6 Nov 2002 20:57:41 +0000 Subject: [PATCH] * macrotab.h (struct macro_source_file): Doc fix. --- gdb/ChangeLog | 4 ++++ gdb/macrotab.h | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index dc7f7eb..707dadf 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2002-11-06 Jim Blandy + + * macrotab.h (struct macro_source_file): Doc fix. + 2002-11-05 Jeff Johnston * varobj.c (child_exists, cplus_number_of_children): Change diff --git a/gdb/macrotab.h b/gdb/macrotab.h index df32977..bd44e2c 100644 --- a/gdb/macrotab.h +++ b/gdb/macrotab.h @@ -83,6 +83,15 @@ struct macro_table; tree mapping the #inclusions that contributed to the compilation unit, with the main source file as its root. + Beware --- not every source file mentioned in a compilation unit's + symtab structures will appear in the #inclusion tree! As of Oct + 2002, GCC does record the effect of #line directives in the source + line info, but not in macro info. This means that GDB's symtabs + (built from the former, among other things) may mention filenames + that the #inclusion tree (built from the latter) doesn't have any + record of. See macroscope.c:sal_macro_scope for how to accomodate + this. + It's worth noting that libcpp has a simpler way of representing all this, which we should consider switching to. It might even be suitable for ordinary non-macro line number info. -- 2.7.4