56 struct ui_file *stream,
int quoter);
120 "Warning: the current language does not match this frame.";
135 _(
"The current source language is " 136 "\"auto; currently %s\".\n"),
140 _(
"The current source language is \"%s\".\n"),
164 if (strcmp (
language,
"local") == 0)
170 if (strcmp (lang->la_name,
language) == 0)
211 "Couldn't find language `%s' in known languages list.",
238 "Unrecognized range check setting.");
242 _(
"Range checking is \"auto; currently %s\".\n"),
250 warning (
_(
"the current range check setting " 251 "does not match the language.\n"));
259 if (strcmp (
range,
"on") == 0)
264 else if (strcmp (
range,
"warn") == 0)
269 else if (strcmp (
range,
"off") == 0)
274 else if (strcmp (
range,
"auto") == 0)
283 _(
"Unrecognized range check setting: \"%s\""),
range);
286 warning (
_(
"the current range check setting " 287 "does not match the language.\n"));
298 const char *tmp = NULL;
310 "Unrecognized case-sensitive setting.");
314 _(
"Case sensitivity in " 315 "name search is \"auto; currently %s\".\n"),
320 _(
"Case sensitivity in name search is \"%s\".\n"),
324 warning (
_(
"the current case sensitivity setting does not match " 352 "Unrecognized case-sensitive setting: \"%s\"",
357 warning (
_(
"the current case sensitivity setting does not match " 386 return prev_language;
452 va_start (args,
string);
482 if (strcmp (lang->la_name, str) == 0)
483 return lang->la_language;
485 if (strcmp (str,
"local") == 0)
511 "\"set check\" must be followed by the name of a check subcommand.\n");
527 static const char **language_names;
532 language_names =
new const char *[ARRAY_SIZE (
languages) + 2];
536 const char **language_names_p = language_names;
538 *language_names_p++ =
"local";
540 const char **sort_begin = language_names_p;
547 *language_names_p++ = lang->la_name;
549 *language_names_p = NULL;
554 if (lang->la_filename_extensions != NULL)
556 for (
size_t i = 0; lang->la_filename_extensions[i] != NULL; ++i)
564 doc.
printf (
_(
"Set the current source language.\n" 565 "The currently understood settings are:\n\nlocal or " 566 "auto Automatic setting based on source file\n"));
577 doc.
printf (
"%-16s Use the %c%s language\n",
580 toupper (lang->la_name[0]),
588 _(
"Show the current source language."),
603 if (lang->skip_trampoline != NULL)
605 CORE_ADDR real_pc = lang->skip_trampoline (frame, pc);
623 const char *mangled,
int options)
634 const char *mangled,
char **demangled)
650 const char *physname)
681 return " \t\n!@#$%^&*()+=|~`}{[]\"';:?/>.<,-";
697 struct type **char_type,
const char **charset)
699 error (
_(
"Getting a string is unsupported in this language."));
711 = (comp_match_res != NULL ? &comp_match_res->
match_for_lcd : NULL);
719 if (comp_match_res != NULL)
756 error (
_(
"Attempted to parse an expression with unknown language"));
763 error (
_(
"internal error - unimplemented " 764 "function unk_lang_emit_char called."));
770 error (
_(
"internal error - unimplemented " 771 "function unk_lang_printchar called."));
776 const gdb_byte *
string,
unsigned int length,
777 const char *encoding,
int force_ellipses,
780 error (
_(
"internal error - unimplemented " 781 "function unk_lang_printstr called."));
786 struct ui_file *stream,
int show,
int level,
789 error (
_(
"internal error - unimplemented " 790 "function unk_lang_print_type called."));
796 struct ui_file *stream,
int recurse,
800 error (
_(
"internal error - unimplemented " 801 "function unk_lang_val_print called."));
808 error (
_(
"internal error - unimplemented " 809 "function unk_lang_value_print called."));
962 if (lang != NULL && lang->la_language_arch_info != NULL)
964 lang->la_language_arch_info (
gdbarch,
1008 static struct type **
1112 "language_lookup_primitive_type_as_symbol" 1141 static const char *
const type_or_range_names[]
1142 = {
"on",
"off",
"warn",
"auto", NULL };
1144 static const char *
const case_sensitive_names[]
1145 = {
"on",
"off",
"auto", NULL };
1153 _(
"Set the status of the type/range checker."),
1159 _(
"Show the status of the type/range checker."),
1166 _(
"Set range checking. (on/warn/off/auto)"),
1167 _(
"Show range checking. (on/warn/off/auto)"),
1174 Set case sensitivity in name search. (on/off/auto)"),
_(
"\ 1175 Show case sensitivity in name search. (on/off/auto)"),
_(
"\ 1176 For Fortran the default is off; for other languages the default is on."),
1184 type = xstrdup (
"auto");
1185 range = xstrdup (
"auto");
const struct language_defn unknown_language_defn
const struct language_defn rust_language_defn
static char * unk_lang_class_name(const char *mangled)
const ada_lookup_name_info & ada() const
struct cmd_list_element * setchecklist
static const char * range
const struct language_defn c_language_defn
struct symbol * language_lookup_primitive_type_as_symbol(const struct language_defn *la, struct gdbarch *gdbarch, const char *name)
#define TYPE_OBJFILE_OWNED(t)
void language_info(int quietly)
const struct language_defn cplus_language_defn
struct frame_info * get_selected_frame(const char *message)
struct cmd_list_element * showchecklist
unsigned int default_search_name_hash(const char *string0)
int(* la_pass_by_reference)(struct type *type)
static void show_case_command(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
const struct language_defn d_language_defn
int pointer_type(struct type *type)
static const struct language_defn * languages[]
#define GDBARCH_OBSTACK_CALLOC(GDBARCH, NR, TYPE)
enum case_sensitivity la_case_sensitivity
const char * default_word_break_characters(void)
void warning(const char *fmt,...)
const char * symbol_search_name(const struct general_symbol_info *gsymbol)
#define TYPE_NAME(thistype)
symbol_name_matcher_ftype * get_symbol_name_matcher(const language_defn *lang, const lookup_name_info &lookup_name)
static bool compare_cstrings(const char *str1, const char *str2)
enum language set_language(enum language lang)
bool completion_mode() const
struct type * language_string_char_type(const struct language_defn *la, struct gdbarch *gdbarch)
const struct builtin_type * builtin_type(struct gdbarch *gdbarch)
const struct language_defn f_language_defn
void internal_error(const char *file, int line, const char *fmt,...)
const struct language_defn * language_def(enum language lang)
void add_setshow_enum_cmd(const char *name, enum command_class theclass, const char *const *enumlist, const char **var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_const_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
void add_filename_language(const char *ext, enum language lang)
unsigned int symbol_lookup_debug
bool() symbol_name_matcher_ftype(const char *symbol_search_name, const lookup_name_info &lookup_name, completion_match_result *comp_match_res)
struct value * default_read_var_value(struct symbol *var, const struct block *var_block, struct frame_info *frame)
enum language language_enum(const char *str)
const struct language_defn pascal_language_defn
void set_initial_language(void)
enum language la_language
static void set_range_case(void)
static void * language_gdbarch_post_init(struct gdbarch *gdbarch)
struct block_symbol lookup_symbol(const char *name, const struct block *block, domain_enum domain, struct field_of_this_result *is_a_field_of_this)
void default_print_typedef(struct type *type, struct symbol *new_symbol, struct ui_file *stream)
struct type * string_char_type
static void show_range_command(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
const struct language_defn opencl_language_defn
const struct language_defn asm_language_defn
void printf_filtered(const char *format,...)
#define GDBARCH_OBSTACK_ZALLOC(GDBARCH, TYPE)
#define host_address_to_string(ADDR)
int strncmp_iw_with_mode(const char *string1, const char *string2, size_t string2_len, strncmp_iw_mode mode, enum language language, completion_match_for_lcd *match_for_lcd)
char lang_frame_mismatch_warn[]
#define TYPE_IS_REFERENCE(t)
static struct symbol * language_alloc_type_symbol(enum language lang, struct type *type)
struct cmd_list_element * add_prefix_cmd(const char *name, enum command_class theclass, cmd_const_cfunc_ftype *fun, const char *doc, struct cmd_list_element **prefixlist, const char *prefixname, int allow_unknown, struct cmd_list_element **list)
mach_port_t kern_return_t mach_port_t msgports mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
struct cmd_list_element * setlist
char * gdb_demangle(const char *name, int options)
const struct language_defn auto_language_defn
#define SYMBOL_ACLASS_INDEX(symbol)
#define CATCH(EXCEPTION, MASK)
struct symbol ** primitive_type_symbols
struct block_symbol basic_lookup_symbol_nonlocal(const struct language_defn *langdef, const char *name, const struct block *block, const domain_enum domain)
struct type * bool_type_default
const struct language_defn go_language_defn
#define SYMBOL_DOMAIN(symbol)
static void unk_lang_printchar(int c, struct type *type, struct ui_file *stream)
void range_error(const char *string,...)
void void void void verror(const char *fmt, va_list args) ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF(1
void fprintf_filtered(struct ui_file *stream, const char *format,...)
static void unk_lang_value_print(struct value *, struct ui_file *, const struct value_print_options *)
static int unk_lang_parser(struct parser_state *)
void vfprintf_filtered(struct ui_file *stream, const char *format, va_list args)
void fprintf_unfiltered(struct ui_file *stream, const char *format,...)
struct cmd_list_element * showlist
const char * bool_type_symbol
int default_pass_by_reference(struct type *type)
struct type * basic_lookup_transparent_type(const char *name)
char *(* la_class_name_from_physname)(const char *physname)
const char * language_str(enum language lang)
static struct gdbarch_data * language_gdbarch_data
static void add_set_language_command()
static void set_case_command(const char *ignore, int from_tty, struct cmd_list_element *c)
struct type * language_bool_type(const struct language_defn *la, struct gdbarch *gdbarch)
static void unk_lang_error(const char *)
void null_post_parser(expression_up *exp, int void_context_p)
void default_print_array_index(struct value *index_value, struct ui_file *stream, const struct value_print_options *options)
static void unk_lang_emit_char(int c, struct type *type, struct ui_file *stream, int quoter)
void printf_unfiltered(const char *format,...)
completion_match_for_lcd match_for_lcd
char * language_class_name_from_physname(const struct language_defn *lang, const char *physname)
void cmd_show_list(struct cmd_list_element *list, int from_tty, const char *prefix)
static void unknown_language_arch_info(struct gdbarch *gdbarch, struct language_arch_info *lai)
struct cmd_list_element * add_alias_cmd(const char *name, cmd_list_element *old, enum command_class theclass, int abbrev_flag, struct cmd_list_element **list)
#define SYMBOL_OBJFILE_OWNED(symbol)
void default_collect_symbol_completion_matches(completion_tracker &tracker, complete_symbol_mode mode, symbol_name_match_type name_match_type, const char *text, const char *word, enum type_code code)
static void unk_lang_val_print(struct type *type, int embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, struct value *val, const struct value_print_options *options)
void printf(const char *,...) ATTRIBUTE_PRINTF(2
gdb::unique_xmalloc_ptr< char > c_watch_location_expression(struct type *type, CORE_ADDR addr)
void help_list(struct cmd_list_element *list, const char *cmdtype, enum command_class theclass, struct ui_file *stream)
struct language_arch_info arch_info[nr_languages]
struct type * builtin_char
const struct language_defn * current_language
char *(* la_demangle)(const char *mangled, int options)
static struct type ** language_lookup_primitive_type_1(const struct language_arch_info *lai, const char *name)
void set_match(const char *m, const char *m_for_lcd=NULL)
char * language_demangle(const struct language_defn *current_language, const char *mangled, int options)
enum language get_frame_language(struct frame_info *frame)
void default_get_string(struct value *value, gdb_byte **buffer, int *length, struct type **char_type, const char **charset)
const std::string & name() const
#define TYPE_CODE(thistype)
#define default_varobj_ops
const char * c_str() const
enum range_check la_range_check
__extension__ enum language language
const struct exp_descriptor exp_descriptor_standard
const struct language_defn minimal_language_defn
const struct language_defn * expected_language
symbol_name_matcher_ftype *(* la_get_symbol_name_matcher)(const lookup_name_info &)
const struct language_defn m2_language_defn
struct general_symbol_info ginfo
static CORE_ADDR unk_lang_trampoline(struct frame_info *, CORE_ADDR pc)
static void show_check(const char *ignore, int from_tty)
int value_logical_not(struct value *arg1)
static void set_check(const char *ignore, int from_tty)
static const char * language
static int ignore(struct target_ops *ops, struct gdbarch *gdbarch, struct bp_target_info *bp_tgt)
void _initialize_language(void)
#define SYMBOL_TYPE(symbol)
int language_sniff_from_mangled_name(const struct language_defn *lang, const char *mangled, char **demangled)
#define LA_VALUE_PRINT(val, stream, options)
static const char * case_sensitive
void iterate_over_symbols(const struct block *block, const lookup_name_info &name, const domain_enum domain, gdb::function_view< symbol_found_callback_ftype > callback)
const struct language_defn objc_language_defn
struct type * language_lookup_primitive_type(const struct language_defn *la, struct gdbarch *gdbarch, const char *name)
CORE_ADDR skip_language_trampoline(struct frame_info *frame, CORE_ADDR pc)
void void vwarning(const char *fmt, va_list args) ATTRIBUTE_PRINTF(1
int value_true(struct value *val)
struct type ** primitive_type_vector
int(* la_sniff_from_mangled_name)(const char *mangled, char **demangled)
int has_stack_frames(void)
bool default_symbol_name_matcher(const char *symbol_search_name, const lookup_name_info &lookup_name, completion_match_result *comp_match_res)
static void unk_lang_print_type(struct type *type, const char *varstring, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
static void set_range_command(const char *ignore, int from_tty, struct cmd_list_element *c)
const struct language_defn ada_language_defn
void error(const char *fmt,...)
static void show_language_command(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
struct gdbarch_data * gdbarch_data_register_post_init(gdbarch_data_post_init_ftype *post_init)
static void language_init_primitive_type_symbols(struct language_arch_info *lai, const struct language_defn *la, struct gdbarch *gdbarch)
static const struct op_print unk_op_print_tab[]
static void unk_lang_printstr(struct ui_file *stream, struct type *type, const gdb_byte *string, unsigned int length, const char *encoding, int force_ellipses, const struct value_print_options *options)
int language_pass_by_reference(struct type *type)
static char * unk_lang_demangle(const char *mangled, int options)
static void set_language_command(const char *ignore, int from_tty, struct cmd_list_element *c)
struct type * builtin_int