Mon Nov 23 11:38:40 1998 Michael Snyder <msnyder@cleaver.cygnus.com>

* 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.
This commit is contained in:
Michael Snyder 1998-11-23 19:44:42 +00:00
parent 98760eab33
commit e1dba9c442
2 changed files with 30 additions and 3 deletions

View file

@ -1,3 +1,15 @@
Mon Nov 23 11:38:40 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* 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 <cagney@chook.cygnus.com>
* config/sh/tm-sh.h, config/mn10200/tm-mn10200.h,

View file

@ -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 *