language_names[i] = languages[i]->la_name;
language_names[i] = NULL;
+ /* Add the filename extensions. */
+ if (lang->la_filename_extensions != NULL)
+ {
+ int i;
+
+ for (i = 0; lang->la_filename_extensions[i] != NULL; ++i)
+ add_filename_language (lang->la_filename_extensions[i],
+ lang->la_language);
+ }
+
/* Build the "help set language" docs. */
tmp_stream = mem_fileopen ();
return NULL;
}
+/* See langauge.h. */
+
+int
+language_sniff_from_mangled_name (const struct language_defn *lang,
+ const char *mangled, char **demangled)
+{
+ gdb_assert (lang != NULL);
+
+ if (lang->la_sniff_from_mangled_name == NULL)
+ {
+ *demangled = NULL;
+ return 0;
+ }
+
+ return lang->la_sniff_from_mangled_name (mangled, demangled);
+}
+
/* Return class name from physname or NULL. */
char *
language_class_name_from_physname (const struct language_defn *lang,
case_sensitive_on,
array_row_major,
macro_expansion_no,
+ NULL,
&exp_descriptor_standard,
unk_lang_parser,
unk_lang_error,
basic_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */
basic_lookup_transparent_type,/* lookup_transparent_type */
unk_lang_demangle, /* Language specific symbol demangler */
+ NULL,
unk_lang_class_name, /* Language specific
class_name_from_physname */
unk_op_print_tab, /* expression operators for printing */
case_sensitive_on,
array_row_major,
macro_expansion_no,
+ NULL,
&exp_descriptor_standard,
unk_lang_parser,
unk_lang_error,
basic_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */
basic_lookup_transparent_type,/* lookup_transparent_type */
unk_lang_demangle, /* Language specific symbol demangler */
+ NULL,
unk_lang_class_name, /* Language specific
class_name_from_physname */
unk_op_print_tab, /* expression operators for printing */
case_sensitive_on,
array_row_major,
macro_expansion_no,
+ NULL,
&exp_descriptor_standard,
unk_lang_parser,
unk_lang_error,
basic_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */
basic_lookup_transparent_type,/* lookup_transparent_type */
unk_lang_demangle, /* Language specific symbol demangler */
+ NULL,
unk_lang_class_name, /* Language specific
class_name_from_physname */
unk_op_print_tab, /* expression operators for printing */
struct gdbarch *gdbarch)
{
int n;
- struct compunit_symtab *cust;
- struct symtab *symtab;
- struct block *static_block, *global_block;
gdb_assert (lai->primitive_type_vector != NULL);