* config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove
[deliverable/binutils-gdb.git] / gdb / macrotab.h
index cbc6d1b53d7910886d57e206efd0dff29ff173fe..bd44e2c3ed3ee64461ab21a5cbe4b44d911c05bc 100644 (file)
@@ -22,8 +22,8 @@
 #ifndef MACROTAB_H
 #define MACROTAB_H
 
-#include "obstack.h"
-#include "bcache.h"
+struct obstack;
+struct bcache;
 
 /* How do we represent a source location?  I mean, how should we
    represent them within GDB; the user wants to use all sorts of
@@ -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.
This page took 0.027723 seconds and 4 git commands to generate.