mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-01 05:55:23 +08:00
Factor out memberptr printing code from c_val_print
gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out memberptr printing code from c_val_print to ... (c_val_print_memberptr): ... this new function.
This commit is contained in:
parent
49f7fe2880
commit
938c69a118
@ -1,3 +1,9 @@
|
|||||||
|
2015-07-09 Simon Marchi <simon.marchi@ericsson.com>
|
||||||
|
|
||||||
|
* c-valprint.c (c_val_print): Factor out memberptr printing code
|
||||||
|
from c_val_print to ...
|
||||||
|
(c_val_print_memberptr): ... this new function.
|
||||||
|
|
||||||
2015-07-09 Simon Marchi <simon.marchi@ericsson.com>
|
2015-07-09 Simon Marchi <simon.marchi@ericsson.com>
|
||||||
|
|
||||||
* c-valprint.c (c_val_print): Factor out int printing code to ...
|
* c-valprint.c (c_val_print): Factor out int printing code to ...
|
||||||
|
@ -456,6 +456,26 @@ c_val_print_int (struct type *type, struct type *unresolved_type,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* c_val_print helper for TYPE_CODE_MEMBERPTR. */
|
||||||
|
|
||||||
|
static void
|
||||||
|
c_val_print_memberptr (struct type *type, const gdb_byte *valaddr,
|
||||||
|
int embedded_offset, CORE_ADDR address,
|
||||||
|
struct ui_file *stream, int recurse,
|
||||||
|
const struct value *original_value,
|
||||||
|
const struct value_print_options *options)
|
||||||
|
{
|
||||||
|
if (!options->format)
|
||||||
|
{
|
||||||
|
cp_print_class_member (valaddr + embedded_offset, type, stream, "&");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
generic_val_print (type, valaddr, embedded_offset, address, stream,
|
||||||
|
recurse, original_value, options, &c_decorations);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* See val_print for a description of the various parameters of this
|
/* See val_print for a description of the various parameters of this
|
||||||
function; they are identical. */
|
function; they are identical. */
|
||||||
|
|
||||||
@ -501,12 +521,9 @@ c_val_print (struct type *type, const gdb_byte *valaddr,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case TYPE_CODE_MEMBERPTR:
|
case TYPE_CODE_MEMBERPTR:
|
||||||
if (!options->format)
|
c_val_print_memberptr (type, valaddr, embedded_offset, address, stream,
|
||||||
{
|
recurse, original_value, options);
|
||||||
cp_print_class_member (valaddr + embedded_offset, type, stream, "&");
|
break;
|
||||||
break;
|
|
||||||
}
|
|
||||||
/* FALLTHROUGH */
|
|
||||||
|
|
||||||
case TYPE_CODE_REF:
|
case TYPE_CODE_REF:
|
||||||
case TYPE_CODE_ENUM:
|
case TYPE_CODE_ENUM:
|
||||||
|
Loading…
Reference in New Issue
Block a user