summaryrefslogtreecommitdiff
path: root/gdb/language.h
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2020-06-23 14:42:14 +0100
committerAndrew Burgess <andrew.burgess@embecosm.com>2020-09-16 10:16:45 +0100
commit5bae7c4e048c69fe6eae96596c800a92b643f563 (patch)
treed5193512a0a6b828ddb6ea23f5e5fef42cae94cc /gdb/language.h
parent22e3f3ed5c417fca6a39173a671dba707d2d6eaf (diff)
downloadbinutils-gdb-5bae7c4e048c69fe6eae96596c800a92b643f563.tar.gz
gdb: Convert la_name_of_this to a method
Convert language_data::la_name_of_this member variable to a virtual method language_defn::name_of_this. There should be no user visible changes after this commit. gdb/ChangeLog: * ada-lang.c (ada_language_data): Remove la_name_of_this initializer. * ax-gdb.c (gen_expr): Update call to name_of_this. * c-exp.y (classify_name): Likewise. * c-lang.c (c_language_data): Remove la_name_of_this initializer. (cplus_language_data): Likewise. (cplus_language::name_of_this): New member function. (asm_language_data): Remove la_name_of_this initializer. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. (d_language::name_of_this): New member function. * expprint.c (print_subexp_standard): Update call to name_of_this. * f-lang.c (f_language_data): Remove la_name_of_this initializer. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (unknown_language::name_of_this): New member function. (auto_language_data): Remove la_name_of_this initializer. (auto_language::name_of_this): New member function. * language.h (language_data): Delete la_name_of_this member variable. (language_defn::name_of_this): New member function. * m2-lang.c (m2_language_data): Remove la_name_of_this initializer. * objc-lang.c (objc_language_data): Likewise. (objc_language::name_of_this): New member function. * opencl-lang.c (opencl_language_data): Remove la_name_of_this initializer. * p-lang.c (pascal_language_data): Likewise. (pascal_language::name_of_this): New member function. * rust-lang.c (rust_language_data): Remove la_name_of_this initializer. * symtab.c (lookup_language_this): Update call to name_of_this. (lookup_symbol_aux): Likewise. * valops.c (value_of_this): Likewise.
Diffstat (limited to 'gdb/language.h')
-rw-r--r--gdb/language.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/gdb/language.h b/gdb/language.h
index f2195ed4e8d..4c9453f33cb 100644
--- a/gdb/language.h
+++ b/gdb/language.h
@@ -227,11 +227,6 @@ struct language_data
/* Now come some hooks for lookup_symbol. */
- /* If this is non-NULL, specifies the name that of the implicit
- local variable that refers to the current object instance. */
-
- const char *la_name_of_this;
-
/* True if the symbols names should be stored in GDB's data structures
for minimal/partial/full symbols using their linkage (aka mangled)
form; false if the symbol names should be demangled first.
@@ -557,6 +552,14 @@ struct language_defn : language_data
virtual const char *struct_too_deep_ellipsis () const
{ return "{...}"; }
+ /* If this returns non-NULL then the string returned specifies the name
+ of the implicit local variable that refers to the current object
+ instance. Return NULL (the default) for languages that have no name
+ for the current object instance. */
+
+ virtual const char *name_of_this () const
+ { return nullptr; }
+
protected:
/* This is the overridable part of the GET_SYMBOL_NAME_MATCHER method.