aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/dwarf2/read.c6
-rw-r--r--gdb/go-lang.c4
3 files changed, 11 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ac4ec6f..ce9d3ae 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2020-09-16 Andrew Burgess <andrew.burgess@embecosm.com>
+ * dwarf2/read.c (dwarf2_physname): Remove special case for
+ language_go.
+ * go-lang.c (go_language::store_sym_names_in_linkage_form_p): New
+ member function.
+
+2020-09-16 Andrew Burgess <andrew.burgess@embecosm.com>
+
* ada-lang.c (ada_language_data): Remove
la_store_sym_names_in_linkage_form_p initializer.
(ada_language::store_sym_names_in_linkage_form_p): New member
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 16001aa..d0398ef 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -10639,12 +10639,6 @@ dwarf2_physname (const char *name, struct die_info *die, struct dwarf2_cu *cu)
{
/* Do nothing (do not demangle the symbol name). */
}
- else if (cu->language == language_go)
- {
- /* This is a lie, but we already lie to the caller new_symbol.
- new_symbol assumes we return the mangled name.
- This just undoes that lie until things are cleaned up. */
- }
else
{
/* Use DMGL_RET_DROP for C++ template functions to suppress
diff --git a/gdb/go-lang.c b/gdb/go-lang.c
index ed18f01..dfc0ddd 100644
--- a/gdb/go-lang.c
+++ b/gdb/go-lang.c
@@ -638,6 +638,10 @@ public:
&& go_classify_struct_type (type) == GO_TYPE_STRING);
}
+ /* See language.h. */
+
+ bool store_sym_names_in_linkage_form_p () const override
+ { return true; }
};
/* Single instance of the Go language class. */