gdb: remove some uses of LA_PRINT_STRING
This commit removes some, but not all, uses of LA_PRINT_STRING. In this commit I've removed those uses where there is an obvious language object on which I can instead call the printstr method. In the remaining 3 uses it is harder to know if the correct thing is to call printstr on the current language, or on a specific language. Currently obviously, we always call on the current language (as that's what LA_PRINT_STRING does), and clearly this behaviour is good enough right now, but is it "right"? I've left them for now and will give them more thought in the future. gdb/ChangeLog: * expprint.c (print_subexp_standard): Replace uses of LA_PRINT_STRING. * f-valprint.c (f_language::value_print_inner): Likewise. * guile/scm-pretty-print.c (ppscm_print_string_repr): Likewise. * p-valprint.c (pascal_language::value_print_inner): Likewise. * python/py-prettyprint.c (print_string_repr): Likewise.
This commit is contained in:
parent
1c4852651c
commit
5cc0917c38
6 changed files with 33 additions and 21 deletions
|
@ -1,3 +1,12 @@
|
|||
2020-12-23 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* expprint.c (print_subexp_standard): Replace uses of
|
||||
LA_PRINT_STRING.
|
||||
* f-valprint.c (f_language::value_print_inner): Likewise.
|
||||
* guile/scm-pretty-print.c (ppscm_print_string_repr): Likewise.
|
||||
* p-valprint.c (pascal_language::value_print_inner): Likewise.
|
||||
* python/py-prettyprint.c (print_string_repr): Likewise.
|
||||
|
||||
2020-12-23 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* rust-exp.y (rust_parse): Rename to...
|
||||
|
|
|
@ -226,9 +226,10 @@ print_subexp_standard (struct expression *exp, int *pos,
|
|||
If necessary, we can temporarily set it to zero, or pass it as an
|
||||
additional parameter to LA_PRINT_STRING. -fnf */
|
||||
get_user_print_options (&opts);
|
||||
LA_PRINT_STRING (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) &exp->elts[pc + 2].string, nargs,
|
||||
NULL, 0, &opts);
|
||||
exp->language_defn
|
||||
->printstr (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) &exp->elts[pc + 2].string, nargs,
|
||||
NULL, 0, &opts);
|
||||
}
|
||||
return;
|
||||
|
||||
|
@ -241,9 +242,10 @@ print_subexp_standard (struct expression *exp, int *pos,
|
|||
(*pos) += 3 + BYTES_TO_EXP_ELEM (nargs + 1);
|
||||
fputs_filtered ("@\"", stream);
|
||||
get_user_print_options (&opts);
|
||||
LA_PRINT_STRING (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) &exp->elts[pc + 2].string, nargs,
|
||||
NULL, 0, &opts);
|
||||
exp->language_defn
|
||||
->printstr (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) &exp->elts[pc + 2].string, nargs,
|
||||
NULL, 0, &opts);
|
||||
fputs_filtered ("\"", stream);
|
||||
}
|
||||
return;
|
||||
|
@ -325,8 +327,9 @@ print_subexp_standard (struct expression *exp, int *pos,
|
|||
struct value_print_options opts;
|
||||
|
||||
get_user_print_options (&opts);
|
||||
LA_PRINT_STRING (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) tempstr, nargs - 1, NULL, 0, &opts);
|
||||
exp->language_defn
|
||||
->printstr (stream, builtin_type (exp->gdbarch)->builtin_char,
|
||||
(gdb_byte *) tempstr, nargs - 1, NULL, 0, &opts);
|
||||
(*pos) = pc;
|
||||
}
|
||||
else
|
||||
|
|
|
@ -235,8 +235,8 @@ f_language::value_print_inner (struct value *val, struct ui_file *stream,
|
|||
{
|
||||
case TYPE_CODE_STRING:
|
||||
f77_get_dynamic_length_of_aggregate (type);
|
||||
LA_PRINT_STRING (stream, builtin_type (gdbarch)->builtin_char,
|
||||
valaddr, TYPE_LENGTH (type), NULL, 0, options);
|
||||
printstr (stream, builtin_type (gdbarch)->builtin_char, valaddr,
|
||||
TYPE_LENGTH (type), NULL, 0, options);
|
||||
break;
|
||||
|
||||
case TYPE_CODE_ARRAY:
|
||||
|
@ -247,9 +247,9 @@ f_language::value_print_inner (struct value *val, struct ui_file *stream,
|
|||
struct type *ch_type = TYPE_TARGET_TYPE (type);
|
||||
|
||||
f77_get_dynamic_length_of_aggregate (type);
|
||||
LA_PRINT_STRING (stream, ch_type, valaddr,
|
||||
TYPE_LENGTH (type) / TYPE_LENGTH (ch_type),
|
||||
NULL, 0, options);
|
||||
printstr (stream, ch_type, valaddr,
|
||||
TYPE_LENGTH (type) / TYPE_LENGTH (ch_type), NULL, 0,
|
||||
options);
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
@ -675,8 +675,8 @@ ppscm_print_string_repr (SCM printer, enum display_hint hint,
|
|||
{
|
||||
struct type *type = builtin_type (gdbarch)->builtin_char;
|
||||
|
||||
LA_PRINT_STRING (stream, type, (gdb_byte *) string.get (),
|
||||
length, NULL, 0, options);
|
||||
language->printstr (stream, type, (gdb_byte *) string.get (),
|
||||
length, NULL, 0, options);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -116,8 +116,8 @@ pascal_language::value_print_inner (struct value *val,
|
|||
len = temp_len;
|
||||
}
|
||||
|
||||
LA_PRINT_STRING (stream, TYPE_TARGET_TYPE (type),
|
||||
valaddr, len, NULL, 0, options);
|
||||
printstr (stream, TYPE_TARGET_TYPE (type), valaddr, len,
|
||||
NULL, 0, options);
|
||||
i = len;
|
||||
}
|
||||
else
|
||||
|
@ -318,8 +318,8 @@ pascal_language::value_print_inner (struct value *val,
|
|||
{
|
||||
len = extract_unsigned_integer (valaddr + length_pos,
|
||||
length_size, byte_order);
|
||||
LA_PRINT_STRING (stream, char_type, valaddr + string_pos,
|
||||
len, NULL, 0, options);
|
||||
printstr (stream, char_type, valaddr + string_pos, len,
|
||||
NULL, 0, options);
|
||||
}
|
||||
else
|
||||
pascal_object_print_value_fields (val, stream, recurse,
|
||||
|
|
|
@ -318,8 +318,8 @@ print_string_repr (PyObject *printer, const char *hint,
|
|||
type = builtin_type (gdbarch)->builtin_char;
|
||||
|
||||
if (hint && !strcmp (hint, "string"))
|
||||
LA_PRINT_STRING (stream, type, (gdb_byte *) output,
|
||||
length, NULL, 0, options);
|
||||
language->printstr (stream, type, (gdb_byte *) output,
|
||||
length, NULL, 0, options);
|
||||
else
|
||||
fputs_filtered (output, stream);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue