* elf-m10300.c (mn10300_elf_relax_section): Allow for the
[deliverable/binutils-gdb.git] / gdb / macrotab.h
index 71f1d3ed5472e685c466531a922b4ccf0db3878b..bc26c2e0fc553b5e44337345e5d1aedcad649708 100644 (file)
@@ -1,5 +1,5 @@
 /* Interface to C preprocessor macro tables for GDB.
-   Copyright (C) 2002, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2007, 2008, 2009 Free Software Foundation, Inc.
    Contributed by Red Hat, Inc.
 
    This file is part of GDB.
@@ -305,12 +305,24 @@ struct macro_source_file *(macro_definition_location
                             int *definition_line));
 
 /* Callback function when walking a macro table.  NAME is the name of
-   the macro, and DEFINITION is the definition.  */
+   the macro, and DEFINITION is the definition.  USER_DATA is an
+   arbitrary pointer which is passed by the caller to macro_for_each
+   or macro_for_each_in_scope.  */
 typedef void (*macro_callback_fn) (const char *name,
-                                  const struct macro_definition *definition);
-
-/* Call the function FN for each macro in the macro table TABLE.  */
-void macro_for_each (struct macro_table *table, macro_callback_fn fn);
+                                  const struct macro_definition *definition,
+                                  void *user_data);
+
+/* Call the function FN for each macro in the macro table TABLE.
+   USER_DATA is passed, untranslated, to FN.  */
+void macro_for_each (struct macro_table *table, macro_callback_fn fn,
+                    void *user_data);
+
+/* Call the function FN for each macro that is visible in a given
+   scope.  The scope is represented by FILE and LINE.  USER_DATA is
+   passed, untranslated, to FN.  */
+void macro_for_each_in_scope (struct macro_source_file *file, int line,
+                             macro_callback_fn fn,
+                             void *user_data);
 
 
 #endif /* MACROTAB_H */
This page took 0.037378 seconds and 4 git commands to generate.