diff options
author | Joel Brobecker <brobecker@gnat.com> | 2005-10-03 21:21:20 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2005-10-03 21:21:20 +0000 |
commit | e79af960e264269f6719a008ca84c56487f2aec2 (patch) | |
tree | 328581511cb723c9ac15215a0e1adee8bc4f08bf /gdb/language.c | |
parent | 043f5962ba69d000b6106d923792f4ce2fbb37b1 (diff) | |
download | gdb-e79af960e264269f6719a008ca84c56487f2aec2.zip gdb-e79af960e264269f6719a008ca84c56487f2aec2.tar.gz gdb-e79af960e264269f6719a008ca84c56487f2aec2.tar.bz2 |
2005-10-03 Joel Brobecker <brobecker@adacore.com>
* language.h (language_defn): New field la_print_array_index.
(LA_PRINT_ARRAY_INDEX): New macro.
(default_print_array_index): Add declaration.
* language.c (default_print_array_index): new function.
(unknown_language): Add value for new field.
(auto_language): Likewise.
(local_language): Likewise.
* ada-lang.c (ada_print_array_index): New function.
(ada_language_defn): Add value for new field.
* c-lang.c (c_language_defn): Likewise.
(cpluc_language_defn): Likewise.
(asm_language_defn): Likewise.
(minimal_language_defn): Likewise.
* f-lang.c (f_language_defn): Likewise.
* jv-lang.c (java_language_defn): Likewise.
* m2-lang.c (m2_language_defn): Likewise.
* objc-lang.c (objc_language_defn): Likewise.
* p-lang.c (pascal_language_defn): Likewise.
* scm-lang.c (scm_language_defn): Likewise.
* valprint.h (print_array_indexes_p): Add declaration.
(get_array_low_bound): Add declaration.
(maybe_print_array_index): Add declaration.
* valprint.c (print_array_indexes): New static variable.
(show_print_array_indexes): New function.
(print_array_indexes_p): New function.
(get_array_low_bound): New function.
(maybe_print_array_index): New function.
(val_print_array_elements): Print the index of each element if
requested by the user.
(_initialize_valprint): Add new array-indexes "set/show print" command.
* ada-valprint.c (print_optional_low_bound): Replace extracted code
by call to ada_get_array_low_bound_and_type(). Stop printing the low
bound if indexes will be printed for all elements of the array.
(val_print_packed_array_elements): Print the index of each element
of the array if necessary.
Diffstat (limited to 'gdb/language.c')
-rw-r--r-- | gdb/language.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gdb/language.c b/gdb/language.c index 78a72f0..493fe5d 100644 --- a/gdb/language.c +++ b/gdb/language.c @@ -1057,6 +1057,17 @@ default_word_break_characters (void) return " \t\n!@#$%^&*()+=|~`}{[]\"';:?/>.<,-"; } +/* Print the index of array elements using the C99 syntax. */ + +void +default_print_array_index (struct value *index_value, struct ui_file *stream, + int format, enum val_prettyprint pretty) +{ + fprintf_filtered (stream, "["); + LA_VALUE_PRINT (index_value, stream, format, pretty); + fprintf_filtered (stream, "] = "); +} + /* Define the language that is no language. */ static int @@ -1181,6 +1192,7 @@ const struct language_defn unknown_language_defn = NULL, default_word_break_characters, unknown_language_arch_info, /* la_language_arch_info. */ + default_print_array_index, LANG_MAGIC }; @@ -1217,6 +1229,7 @@ const struct language_defn auto_language_defn = NULL, default_word_break_characters, unknown_language_arch_info, /* la_language_arch_info. */ + default_print_array_index, LANG_MAGIC }; @@ -1252,6 +1265,7 @@ const struct language_defn local_language_defn = NULL, default_word_break_characters, unknown_language_arch_info, /* la_language_arch_info. */ + default_print_array_index, LANG_MAGIC }; |