gdb: Convert language la_sniff_from_mangled_name field to a method
[deliverable/binutils-gdb.git] / gdb / rust-lang.c
index 26e2ad5ce25265d5b02114d9ee50ebe12199f2e1..d75f34d0d9a4c39019540086046be4bbe7507703 100644 (file)
@@ -2016,17 +2016,6 @@ rust_lookup_symbol_nonlocal (const struct language_defn *langdef,
 
 \f
 
-/* la_sniff_from_mangled_name for Rust.  */
-
-static int
-rust_sniff_from_mangled_name (const char *mangled, char **demangled)
-{
-  *demangled = gdb_demangle (mangled, DMGL_PARAMS | DMGL_ANSI);
-  return *demangled != NULL;
-}
-
-\f
-
 /* la_watch_location_expression for Rust.  */
 
 static gdb::unique_xmalloc_ptr<char>
@@ -2083,7 +2072,6 @@ extern const struct language_data rust_language_data =
   false,                       /* la_store_sym_names_in_linkage_form_p */
   rust_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */
   gdb_demangle,                        /* Language specific symbol demangler */
-  rust_sniff_from_mangled_name,
   NULL,                                /* Language specific
                                   class_name_from_physname */
   c_op_print_tab,              /* expression operators for printing */
@@ -2148,6 +2136,14 @@ public:
     lai->bool_type_default = types[rust_primitive_bool];
     lai->string_char_type = types[rust_primitive_u8];
   }
+
+  /* See language.h.  */
+  bool sniff_from_mangled_name (const char *mangled,
+                               char **demangled) const override
+  {
+    *demangled = gdb_demangle (mangled, DMGL_PARAMS | DMGL_ANSI);
+    return *demangled != NULL;
+  }
 };
 
 /* Single instance of the Rust language class.  */
This page took 0.025015 seconds and 4 git commands to generate.