From: Michael Snyder Date: Mon, 23 Nov 1998 19:44:42 +0000 (+0000) Subject: Mon Nov 23 11:38:40 1998 Michael Snyder X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e1dba9c442ff7224df77f419d72656314f62147b;p=binutils-gdb.git Mon Nov 23 11:38:40 1998 Michael Snyder * symfile.c (deduce_language_from_filename): rewrite so as to work from a table of filename extensions, modifiable by the user. (filename_language_table): new data structure. (set_ext_lang_command): new function for new command, "set extension-language". (info_extension_language_command): new function for new command "info extension-languages". (add_filename_language, init_filename_language_table): new support functions for the above. * language.c (language_enum): new function. Support for above. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 03bab36b7a8..9bcc2cd0d50 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,15 @@ +Mon Nov 23 11:38:40 1998 Michael Snyder + + * symfile.c (deduce_language_from_filename): rewrite so as to + work from a table of filename extensions, modifiable by the user. + (filename_language_table): new data structure. + (set_ext_lang_command): new function for new command, "set + extension-language". (info_extension_language_command): new + function for new command "info extension-languages". + (add_filename_language, init_filename_language_table): new + support functions for the above. + * language.c (language_enum): new function. Support for above. + Mon Nov 23 10:47:54 1998 Andrew Cagney * config/sh/tm-sh.h, config/mn10200/tm-mn10200.h, diff --git a/gdb/language.c b/gdb/language.c index 1c10026f813..db6d513730a 100644 --- a/gdb/language.c +++ b/gdb/language.c @@ -166,9 +166,9 @@ show_language_command (ignore, from_tty) flang = get_frame_language(); if (flang != language_unknown && - language_mode == language_mode_manual && - current_language->la_language != flang) - printf_filtered("%s\n",lang_frame_mismatch_warn); + language_mode == language_mode_manual && + current_language->la_language != flang) + printf_filtered("%s\n",lang_frame_mismatch_warn); } /* Set command. Change the current working language. */ @@ -1123,6 +1123,21 @@ range_error (va_alist) /* This page contains miscellaneous functions */ +/* Return the language enum for a given language string. */ + +enum language +language_enum (str) + char *str; +{ + int i; + + for (i = 0; i < languages_size; i++) + if (STREQ (languages[i]->la_name, str)) + return languages[i]->la_language; + + return language_unknown; +} + /* Return the language struct for a given language enum. */ const struct language_defn *