diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/cp-namespace.c | 2 | ||||
-rw-r--r-- | gdb/symtab.h | 9 |
2 files changed, 7 insertions, 4 deletions
diff --git a/gdb/cp-namespace.c b/gdb/cp-namespace.c index 6130381..8fb2f71 100644 --- a/gdb/cp-namespace.c +++ b/gdb/cp-namespace.c @@ -519,7 +519,7 @@ cp_lookup_symbol_imports_or_template (const char *scope, if (function != NULL && function->language () == language_cplus) { /* Search the function's template parameters. */ - if (SYMBOL_IS_CPLUS_TEMPLATE_FUNCTION (function)) + if (function->is_cplus_template_function ()) { struct template_symbol *templ = (struct template_symbol *) function; diff --git a/gdb/symtab.h b/gdb/symtab.h index 9b7d7e3..a861451 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -1198,6 +1198,11 @@ struct symbol : public general_symbol_info, public allocate_on_obstack m_is_inlined = is_inlined; } + bool is_cplus_template_function () const + { + return this->subclass == SYMBOL_TEMPLATE; + } + /* Data type of value */ struct type *type = nullptr; @@ -1300,8 +1305,6 @@ struct block_symbol /* Note: There is no accessor macro for symbol.owner because it is "private". */ -#define SYMBOL_IS_CPLUS_TEMPLATE_FUNCTION(symbol) \ - (((symbol)->subclass) == SYMBOL_TEMPLATE) #define SYMBOL_TYPE(symbol) (symbol)->type #define SYMBOL_LINE(symbol) (symbol)->line #define SYMBOL_COMPUTED_OPS(symbol) ((symbol)->impl ().ops_computed) @@ -1342,7 +1345,7 @@ extern void symbol_set_symtab (struct symbol *symbol, struct symtab *symtab); /* An instance of this type is used to represent a C++ template function. A symbol is really of this type iff - SYMBOL_IS_CPLUS_TEMPLATE_FUNCTION is true. */ + symbol::is_cplus_template_function is true. */ struct template_symbol : public symbol { |