GDB (xrefs)
Classes | Macros | Typedefs | Enumerations | Functions | Variables
/tmp/gdb-7.10/gdb/language.h File Reference
#include "symtab.h"

Go to the source code of this file.

Classes

struct  language_arch_info
 
struct  language_defn
 

Macros

#define MAX_FORTRAN_DIMS   7 /* Maximum number of F77 array dims. */
 
#define LANG_MAGIC   910823L
 
#define RANGE_CHECK   (range_check != range_check_off)
 
#define CAST_IS_CONVERSION(LANG)
 
#define LA_PRINT_TYPE(type, varstring, stream, show, level, flags)   (current_language->la_print_type(type,varstring,stream,show,level,flags))
 
#define LA_PRINT_TYPEDEF(type, new_symbol, stream)   (current_language->la_print_typedef(type,new_symbol,stream))
 
#define LA_VAL_PRINT(type, valaddr, offset, addr, stream, val, recurse, options)
 
#define LA_VALUE_PRINT(val, stream, options)   (current_language->la_value_print(val,stream,options))
 
#define LA_PRINT_CHAR(ch, type, stream)   (current_language->la_printchar(ch, type, stream))
 
#define LA_PRINT_STRING(stream, elttype, string, length, encoding, force_ellipses, options)
 
#define LA_EMIT_CHAR(ch, type, stream, quoter)   (current_language->la_emitchar(ch, type, stream, quoter))
 
#define LA_GET_STRING(value, buffer, length, chartype, encoding)   (current_language->la_get_string(value, buffer, length, chartype, encoding))
 
#define LA_PRINT_ARRAY_INDEX(index_value, stream, options)   (current_language->la_print_array_index(index_value, stream, options))
 
#define LA_ITERATE_OVER_SYMBOLS(BLOCK, NAME, DOMAIN, CALLBACK, DATA)
 
#define PRINT_LITERAL_FORM(c)
 

Typedefs

typedef int(* symbol_name_cmp_ftype) (const char *symbol_search_name, const char *lookup_name)
 

Enumerations

enum  range_mode { range_mode_auto, range_mode_manual }
 
enum  range_check { range_check_off, range_check_warn, range_check_on }
 
enum  case_mode { case_mode_auto, case_mode_manual }
 
enum  array_ordering { array_row_major, array_column_major }
 
enum  case_sensitivity { case_sensitive_on, case_sensitive_off }
 
enum  macro_expansion { macro_expansion_no, macro_expansion_c }
 
enum  language_mode { language_mode_auto, language_mode_manual }
 

Functions

struct typelanguage_bool_type (const struct language_defn *l, struct gdbarch *gdbarch)
 
struct typelanguage_string_char_type (const struct language_defn *l, struct gdbarch *gdbarch)
 
struct typelanguage_lookup_primitive_type (const struct language_defn *l, struct gdbarch *gdbarch, const char *name)
 
struct symbollanguage_lookup_primitive_type_as_symbol (const struct language_defn *l, struct gdbarch *gdbarch, const char *name)
 
void language_info (int)
 
enum language set_language (enum language)
 
int pointer_type (struct type *)
 
void range_error (const char *,...) ATTRIBUTE_PRINTF(1
 
void int value_true (struct value *)
 
enum language language_enum (char *str)
 
const struct language_defnlanguage_def (enum language)
 
const char * language_str (enum language)
 
void add_language (const struct language_defn *)
 
enum language get_frame_language (void)
 
CORE_ADDR skip_language_trampoline (struct frame_info *, CORE_ADDR pc)
 
char * language_demangle (const struct language_defn *current_language, const char *mangled, int options)
 
char * language_class_name_from_physname (const struct language_defn *, const char *physname)
 
char * default_word_break_characters (void)
 
void default_print_array_index (struct value *index_value, struct ui_file *stream, const struct value_print_options *options)
 
int language_pass_by_reference (struct type *type)
 
int default_pass_by_reference (struct type *type)
 
void default_print_typedef (struct type *type, struct symbol *new_symbol, struct ui_file *stream)
 
void default_get_string (struct value *value, gdb_byte **buffer, int *length, struct type **char_type, const char **charset)
 
void c_get_string (struct value *value, gdb_byte **buffer, int *length, struct type **char_type, const char **charset)
 

Variables

enum range_mode range_mode
 
enum range_check range_check
 
enum case_mode case_mode
 
enum array_ordering array_ordering
 
enum case_sensitivity case_sensitivity
 
const struct language_defncurrent_language
 
const struct language_defnexpected_language
 
enum language_mode language_mode
 

Macro Definition Documentation

#define CAST_IS_CONVERSION (   LANG)
Value:
((LANG)->la_language == language_c || \
(LANG)->la_language == language_cplus || \
(LANG)->la_language == language_objc)

Definition at line 468 of file language.h.

Referenced by evaluate_subexp_with_coercion().

#define LA_EMIT_CHAR (   ch,
  type,
  stream,
  quoter 
)    (current_language->la_emitchar(ch, type, stream, quoter))
#define LA_GET_STRING (   value,
  buffer,
  length,
  chartype,
  encoding 
)    (current_language->la_get_string(value, buffer, length, chartype, encoding))

Definition at line 501 of file language.h.

Referenced by gdbscm_value_to_string(), and valpy_string().

#define LA_ITERATE_OVER_SYMBOLS (   BLOCK,
  NAME,
  DOMAIN,
  CALLBACK,
  DATA 
)
Value:
(current_language->la_iterate_over_symbols (BLOCK, NAME, DOMAIN, CALLBACK, \
DATA))
const struct language_defn * current_language
Definition: language.c:85
#define NAME
Definition: ada-exp.c:292
void(* la_iterate_over_symbols)(const struct block *block, const char *name, domain_enum domain, symbol_found_callback_ftype *callback, void *data)
Definition: language.h:356

Definition at line 507 of file language.h.

Referenced by iterate_over_file_blocks().

#define LA_PRINT_ARRAY_INDEX (   index_value,
  stream,
  options 
)    (current_language->la_print_array_index(index_value, stream, options))

Definition at line 504 of file language.h.

Referenced by maybe_print_array_index().

#define LA_PRINT_CHAR (   ch,
  type,
  stream 
)    (current_language->la_printchar(ch, type, stream))
#define LA_PRINT_STRING (   stream,
  elttype,
  string,
  length,
  encoding,
  force_ellipses,
  options 
)
Value:
(current_language->la_printstr(stream, elttype, string, length, \
encoding, force_ellipses,options))
const struct language_defn * current_language
Definition: language.c:85
void(* la_printstr)(struct ui_file *stream, struct type *elttype, const gdb_byte *string, unsigned int length, const char *encoding, int force_ellipses, const struct value_print_options *)
Definition: language.h:191
static char encoding[]
Definition: remote-mips.c:2988

Definition at line 496 of file language.h.

Referenced by c_val_print(), f_val_print(), m2_val_print(), pascal_val_print(), ppscm_print_string_repr(), print_string_repr(), print_subexp_standard(), val_print_string(), and varobj_value_get_print_value().

#define LA_PRINT_TYPE (   type,
  varstring,
  stream,
  show,
  level,
  flags 
)    (current_language->la_print_type(type,varstring,stream,show,level,flags))
#define LA_PRINT_TYPEDEF (   type,
  new_symbol,
  stream 
)    (current_language->la_print_typedef(type,new_symbol,stream))

Definition at line 485 of file language.h.

Referenced by typedef_print().

#define LA_VAL_PRINT (   type,
  valaddr,
  offset,
  addr,
  stream,
  val,
  recurse,
  options 
)
Value:
(current_language->la_val_print(type,valaddr,offset,addr,stream, \
val,recurse,options))
const struct language_defn * current_language
Definition: language.c:85
void(* la_val_print)(struct type *type, const gdb_byte *contents, int embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, const struct value *val, const struct value_print_options *options)
Definition: language.h:232
Definition: gdbtypes.h:749
int offset
Definition: agent.c:65

Definition at line 488 of file language.h.

#define LA_VALUE_PRINT (   val,
  stream,
  options 
)    (current_language->la_value_print(val,stream,options))

Definition at line 491 of file language.h.

Referenced by ada_print_array_index(), default_print_array_index(), and value_print().

#define LANG_MAGIC   910823L

Definition at line 402 of file language.h.

Referenced by add_language().

#define MAX_FORTRAN_DIMS   7 /* Maximum number of F77 array dims. */

Definition at line 40 of file language.h.

Referenced by evaluate_subexp_standard(), and f77_print_array().

#define PRINT_LITERAL_FORM (   c)
Value:
((c) >= 0x20 \
&& ((c) < 0x7F || (c) >= 0xA0) \
&& (!sevenbit_strings || (c) < 0x80))
int sevenbit_strings

Definition at line 517 of file language.h.

Referenced by m2_emit_char(), pascal_one_char(), and pascal_printstr().

#define RANGE_CHECK   (range_check != range_check_off)

Definition at line 464 of file language.h.

Referenced by parse_number().

Typedef Documentation

typedef int(* symbol_name_cmp_ftype) (const char *symbol_search_name, const char *lookup_name)

Definition at line 135 of file language.h.

Enumeration Type Documentation

Enumerator
array_row_major 
array_column_major 

Definition at line 77 of file language.h.

enum case_mode
Enumerator
case_mode_auto 
case_mode_manual 

Definition at line 67 of file language.h.

Enumerator
case_sensitive_on 
case_sensitive_off 

Definition at line 88 of file language.h.

Enumerator
language_mode_auto 
language_mode_manual 

Definition at line 432 of file language.h.

Enumerator
macro_expansion_no 
macro_expansion_c 

Definition at line 99 of file language.h.

Enumerator
range_check_off 
range_check_warn 
range_check_on 

Definition at line 57 of file language.h.

enum range_mode
Enumerator
range_mode_auto 
range_mode_manual 

Definition at line 46 of file language.h.

Function Documentation

void add_language ( const struct language_defn )
void c_get_string ( struct value value,
gdb_byte **  buffer,
int length,
struct type **  char_type,
const char **  charset 
)
void default_get_string ( struct value value,
gdb_byte **  buffer,
int length,
struct type **  char_type,
const char **  charset 
)

Definition at line 686 of file language.c.

References _, and error().

int default_pass_by_reference ( struct type type)

Definition at line 659 of file language.c.

void default_print_array_index ( struct value index_value,
struct ui_file stream,
const struct value_print_options options 
)

Definition at line 677 of file language.c.

References fprintf_filtered(), and LA_VALUE_PRINT.

void default_print_typedef ( struct type type,
struct symbol new_symbol,
struct ui_file stream 
)

Definition at line 346 of file typeprint.c.

References _, and error().

char* default_word_break_characters ( void  )

Definition at line 669 of file language.c.

Referenced by f_word_break_characters(), and init_main().

enum language get_frame_language ( void  )
struct type* language_bool_type ( const struct language_defn l,
struct gdbarch gdbarch 
)
char* language_class_name_from_physname ( const struct language_defn ,
const char *  physname 
)
const struct language_defn* language_def ( enum  language)
char* language_demangle ( const struct language_defn current_language,
const char *  mangled,
int  options 
)

Definition at line 629 of file language.c.

References language_defn::la_demangle.

Referenced by demangle_command(), and fprintf_symbol_filtered().

enum language language_enum ( char *  str)
void language_info ( int  )
struct type* language_lookup_primitive_type ( const struct language_defn l,
struct gdbarch gdbarch,
const char *  name 
)
struct symbol* language_lookup_primitive_type_as_symbol ( const struct language_defn l,
struct gdbarch gdbarch,
const char *  name 
)
int language_pass_by_reference ( struct type type)
const char* language_str ( enum  language)
struct type* language_string_char_type ( const struct language_defn l,
struct gdbarch gdbarch 
)
int pointer_type ( struct type )
void range_error ( const char *  ,
  ... 
)
enum language set_language ( enum  language)
CORE_ADDR skip_language_trampoline ( struct frame_info ,
CORE_ADDR  pc 
)

Definition at line 604 of file language.c.

References languages_size, and language_defn::skip_trampoline.

Referenced by process_event_stop_test().

void int value_true ( struct value )

Definition at line 404 of file language.c.

References value_logical_not().

Referenced by breakpoint_cond_eval(), execute_control_command(), and should_stop_exception().

Variable Documentation

const struct language_defn* current_language

Definition at line 85 of file language.c.

Referenced by ada_val_print(), ada_value_print(), ada_varobj_get_value_image(), address_info(), allocate_repeat_value(), bpfinishpy_handle_exit(), bpfinishpy_handle_stop(), breakpoint_re_set(), c_type_print_base(), c_type_print_varspec_suffix(), c_val_print(), c_value_print(), check_frame_language_change(), cmdpy_completer_handle_brkchars(), cmdpy_destroyer(), cmdpy_function(), coerce_array(), compile_to_object(), cp_print_static_field(), cp_print_value(), cp_print_value_fields(), cp_type_print_method_args(), decode_line_1(), decode_line_full(), default_make_symbol_completion_list_break_on_1(), default_print_one_register_info(), demangle_command(), dtrace_build_arg_exprs(), extract_sym(), f77_print_array_1(), f_val_print(), finalize_python(), find_slot_in_mapped_hash(), gdb_init(), gdbpy_apply_frame_filter(), gdbpy_apply_type_printers(), gdbpy_before_prompt_hook(), gdbpy_breakpoint_cond_says_stop(), gdbpy_breakpoint_has_cond(), gdbpy_clone_xmethod_worker_data(), gdbpy_eval_from_control_command(), gdbpy_execute_objfile_script(), gdbpy_finish_initialization(), gdbpy_free_type_printers(), gdbpy_free_xmethod_worker_data(), gdbpy_get_matching_xmethod_workers(), gdbpy_get_xmethod_arg_types(), gdbpy_get_xmethod_result_type(), gdbpy_invoke_xmethod(), gdbpy_run_events(), gdbpy_source_objfile_script(), gdbpy_source_script(), gdbpy_start_type_printers(), gdbscm_make_value(), gdbscm_value_call(), gdbscm_value_print(), gdbscm_value_subscript(), generic_val_print(), get_current_search_block(), get_set_value(), get_show_value(), init_raw_breakpoint_without_location(), java_print_value_fields(), java_value_print(), language_info(), language_search_unquoted_string(), line_completion_function(), lookup_minimal_symbol(), lookup_symbol(), lookup_symbol_in_objfile_from_linkage_name(), lookup_transparent_type(), m2_print_array_contents(), m2_val_print(), make_cleanup_restore_current_language(), mi_cmd_data_evaluate_expression(), mt_registers_info(), op_string(), output_register(), parse_exp_in_context_1(), parse_expression_with_language(), pascal_object_print_static_field(), pascal_object_print_value_fields(), pascal_val_print(), pascal_value_print(), print_frame_arg(), print_variable_and_value(), print_variable_at_address(), print_variable_or_computed(), printf_wide_c_string(), psymtab_search_name(), py_free_objfile(), py_free_pspace(), python_command(), python_inferior_exit(), python_interactive_command(), python_new_objfile(), python_on_inferior_call_post(), python_on_inferior_call_pre(), python_on_memory_change(), python_on_normal_stop(), python_on_register_change(), python_on_resume(), pyuw_sniffer(), save_objfile_types(), select_frame(), set_initial_language(), set_language_command(), sh64_do_register(), skip_quoted_chars(), tic6x_return_value(), tyscm_lookup_typename(), ui_printf(), val_print_array_elements(), val_print_packed_array_elements(), val_print_scalar_formatted(), value_arg_coerce(), value_array(), value_cast(), value_cstring(), value_print(), value_string(), value_struct_elt_for_reference(), value_subscript(), value_user_defined_op(), varobj_value_get_print_value(), VEC(), vlscm_binop(), vlscm_print_value_smob(), vlscm_rich_compare(), and vlscm_unop().

const struct language_defn* expected_language

Definition at line 91 of file language.c.

Referenced by check_frame_language_change(), gdb_init(), and set_initial_language().