/* Interface to C preprocessor macro tables for GDB.
- Copyright (C) 2002-2017 Free Software Foundation, Inc.
+ Copyright (C) 2002-2020 Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
This file is part of GDB.
#ifndef MACROTAB_H
#define MACROTAB_H
-#include "common/function-view.h"
+#include "gdbsupport/function-view.h"
struct obstack;
-struct bcache;
struct compunit_symtab;
+namespace gdb {
+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
ambiguous abbreviations, like "break 32" and "break foo.c:32"
the same source location (although 'gcc -DFOO -UFOO -DFOO=2' does
do that in GCC 4.1.2.). */
struct macro_table *new_macro_table (struct obstack *obstack,
- struct bcache *bcache,
+ gdb::bcache *bcache,
struct compunit_symtab *cust);
/* Return FILE->filename with possibly prepended compilation directory name.
This is raw concatenation without the "set substitute-path" and gdb_realpath
- applications done by symtab_to_fullname. Returned string must be freed by
- xfree.
+ applications done by symtab_to_fullname.
THis function ignores the "set filename-display" setting. Its default
setting is "relative" which is backward compatible but the former behavior
of macro filenames printing was "absolute". */
-extern char *macro_source_fullname (struct macro_source_file *file);
+extern std::string macro_source_fullname (struct macro_source_file *file);
#endif /* MACROTAB_H */