X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Flanguage.h;h=5fc25a235ff08f84db5c4e345d66bf6c396306f6;hb=bda13cdcf0db4d9cee648bfa0bfc7f1a4415d2a7;hp=2a100b04917acd370c8e58c6572dd18b4fb66495;hpb=268a13a5a3f7c6b9b6ffc5ac2d1b24eb41f3fbdc;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/language.h b/gdb/language.h index 2a100b0491..5fc25a235f 100644 --- a/gdb/language.h +++ b/gdb/language.h @@ -360,21 +360,6 @@ struct language_defn reference at the language level. */ int (*la_pass_by_reference) (struct type *type); - /* Obtain a string from the inferior, storing it in a newly allocated - buffer in BUFFER, which should be freed by the caller. If the - in- and out-parameter *LENGTH is specified at -1, the string is - read until a null character of the appropriate width is found - - otherwise the string is read to the length of characters specified. - On completion, *LENGTH will hold the size of the string in characters. - If a *LENGTH of -1 was specified it will count only actual - characters, excluding any eventual terminating null character. - Otherwise *LENGTH will include all characters - including any nulls. - CHARSET will hold the encoding used in the string. */ - void (*la_get_string) (struct value *value, - gdb::unique_xmalloc_ptr *buffer, - int *length, struct type **chartype, - const char **charset); - /* Return an expression that can be used for a location watchpoint. TYPE is a pointer type that points to the memory to watch, and ADDR is the address of the watched memory. */ @@ -407,7 +392,7 @@ struct language_defn This field may not be NULL. If the language does not need any special processing here, 'iterate_over_symbols' should be used as the definition. */ - void (*la_iterate_over_symbols) + bool (*la_iterate_over_symbols) (const struct block *block, const lookup_name_info &name, domain_enum domain, gdb::function_view callback); @@ -483,6 +468,11 @@ extern const struct language_defn *current_language; extern const struct language_defn *expected_language; +/* Warning issued when current_language and the language of the current + frame do not match. */ + +extern const char lang_frame_mismatch_warn[]; + /* language_mode == language_mode_auto: current_language automatically set upon selection of scope (e.g. stack frame) @@ -554,8 +544,6 @@ extern enum language set_language (enum language); 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)) @@ -638,11 +626,6 @@ 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::unique_xmalloc_ptr *buffer, - int *length, struct type **char_type, - const char **charset); - /* Default name hashing function. */ /* Produce an unsigned hash value from SEARCH_NAME that is consistent