+2001-11-10 Andrew Cagney <ac131313@redhat.com>
+
+ * printcmd.c, valprint.c, language.c, linespec.c, infcmd.c,
+ gnu-nat.c, findvar.c, expprint.c, typeprint.c, stack.c, top.c:
+ Replace value_ptr with struct value.
+
2001-11-10 Andrew Cagney <ac131313@redhat.com>
* c-valprint.c, ch-lang.c, ch-valprint.c, cp-valprint.c,
enum precedence myprec = PREC_NULL;
/* Set to 1 for a right-associative operator. */
int assoc = 0;
- value_ptr val;
+ struct value *val;
char *tempstr = NULL;
op_print_tab = exp->language_defn->la_op_print_tab;
NOTE: returns NULL if register value is not available.
Caller will check return value or die! */
-value_ptr
+struct value *
value_of_register (int regnum)
{
CORE_ADDR addr;
int optim;
- register value_ptr reg_val;
+ struct value *reg_val;
char *raw_buffer = (char*) alloca (MAX_REGISTER_RAW_SIZE);
enum lval_type lval;
If the variable cannot be found, return a zero pointer.
If FRAME is NULL, use the selected_frame. */
-value_ptr
+struct value *
read_var_value (register struct symbol *var, struct frame_info *frame)
{
- register value_ptr v;
+ register struct value *v;
struct type *type = SYMBOL_TYPE (var);
CORE_ADDR addr;
register int len;
case LOC_BASEREG_ARG:
case LOC_THREAD_LOCAL_STATIC:
{
- value_ptr regval;
+ struct value *regval;
regval = value_from_register (lookup_pointer_type (type),
SYMBOL_BASEREG (var), frame);
{
struct block *b;
int regno = SYMBOL_VALUE (var);
- value_ptr regval;
+ struct value *regval;
if (frame == NULL)
return 0;
NOTE: returns NULL if register value is not available.
Caller will check return value or die! */
-value_ptr
+struct value *
value_from_register (struct type *type, int regnum, struct frame_info *frame)
{
char *raw_buffer = (char*) alloca (MAX_REGISTER_RAW_SIZE);
CORE_ADDR addr;
int optim;
- value_ptr v = allocate_value (type);
+ struct value *v = allocate_value (type);
char *value_bytes = 0;
int value_bytes_copied = 0;
int num_storage_locs;
return a (pointer to a) struct value containing the properly typed
address. */
-value_ptr
+struct value *
locate_var_value (register struct symbol *var, struct frame_info *frame)
{
CORE_ADDR addr = 0;
struct type *type = SYMBOL_TYPE (var);
- value_ptr lazy_value;
+ struct value *lazy_value;
/* Evaluate it first; if the result is a memory address, we're fine.
Lazy evaluation pays off here. */
if (VALUE_LAZY (lazy_value)
|| TYPE_CODE (type) == TYPE_CODE_FUNC)
{
- value_ptr val;
+ struct value *val;
addr = VALUE_ADDRESS (lazy_value);
val = value_from_pointer (lookup_pointer_type (type), addr);
/* Interface GDB to the GNU Hurd.
- Copyright 1992, 1995, 1996, 1997, 1998, 1999, 2000
+ Copyright 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This file is part of GDB.
info_port_rights (char *args, mach_port_type_t only)
{
struct inf *inf = active_inf ();
- value_ptr vmark = value_mark ();
+ struct value *vmark = value_mark ();
if (args)
/* Explicit list of port rights. */
{
while (*args)
{
- value_ptr val = parse_to_comma_and_eval (&args);
+ struct value *val = parse_to_comma_and_eval (&args);
long right = value_as_long (val);
error_t err =
print_port_info (right, 0, inf->task->port, PORTINFO_DETAILS,
static void
print_return_value (int structure_return, struct type *value_type)
{
- register value_ptr value;
+ struct value *value;
#ifdef UI_OUT
static struct ui_stream *stb = NULL;
#endif /* UI_OUT */
struct ui_file *, int, int, int,
enum val_prettyprint);
-static int unk_lang_value_print (value_ptr, struct ui_file *, int, enum val_prettyprint);
+static int unk_lang_value_print (struct value *, struct ui_file *, int, enum val_prettyprint);
/* Forward declaration */
extern const struct language_defn unknown_language_defn;
#if 0 /* Currently unused */
struct type *
-binop_result_type (value_ptr v1, value_ptr v2)
+binop_result_type (struct value *v1, struct value *v2)
{
int size, uns;
struct type *t1 = check_typedef (VALUE_TYPE (v1));
/* Returns non-zero if the value VAL represents a true value. */
int
-value_true (value_ptr val)
+value_true (struct value *val)
{
/* It is possible that we should have some sort of error if a non-boolean
value is used in this context. Possibly dependent on some kind of
#if 0 /* Currently unused */
void
-binop_type_check (value_ptr arg1, value_ptr arg2, int op)
+binop_type_check (struct value *arg1, struct value *arg2, int op)
{
struct type *t1, *t2;
}
static int
-unk_lang_value_print (value_ptr val, struct ui_file *stream, int format,
+unk_lang_value_print (struct value *val, struct ui_file *stream, int format,
enum val_prettyprint pretty)
{
error ("internal error - unimplemented function unk_lang_value_print called.");
if (*copy == '$')
{
- value_ptr valx;
+ struct value *valx;
int index = 0;
int need_canonical = 0;
/* Contents of last address examined.
This is not valid past the end of the `x' command! */
-static value_ptr last_examine_value;
+static struct value *last_examine_value;
/* Largest offset between a symbolic value and an address, that will be
printed as `0x1234 <symbol+offset>'. */
static void do_examine (struct format_data, CORE_ADDR addr,
asection * section);
-static void print_formatted (value_ptr, int, int, struct ui_file *);
+static void print_formatted (struct value *, int, int, struct ui_file *);
static struct format_data decode_format (char **, int, int);
This is used to pad hex numbers so they line up. */
static void
-print_formatted (register value_ptr val, register int format, int size,
+print_formatted (struct value *val, register int format, int size,
struct ui_file *stream)
{
struct type *type = check_typedef (VALUE_TYPE (val));
struct expression *expr;
register struct cleanup *old_chain = 0;
register char format = 0;
- register value_ptr val;
+ struct value *val;
struct format_data fmt;
int cleanup = 0;
&& (TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_STRUCT
|| TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_UNION))
{
- value_ptr v;
+ struct value *v;
v = value_from_vtable_info (val, TYPE_TARGET_TYPE (type));
if (v != 0)
struct expression *expr;
register struct cleanup *old_chain;
register char format = 0;
- register value_ptr val;
+ struct value *val;
struct format_data fmt;
if (exp && *exp == '/')
if (d->format.size)
{
CORE_ADDR addr;
- value_ptr val;
+ struct value *val;
annotate_display_format ();
print_variable_value (struct symbol *var, struct frame_info *frame,
struct ui_file *stream)
{
- value_ptr val = read_var_value (var, frame);
+ struct value *val = read_var_value (var, frame);
value_print (val, stream, 0, Val_pretty_default);
}
int first = 1;
register int i;
register struct symbol *sym;
- register value_ptr val;
+ struct value *val;
/* Offset of next stack argument beyond the one we have seen that is
at the highest offset.
-1 if we haven't come to a stack argument yet. */
register char *f = NULL;
register char *s = arg;
char *string = NULL;
- value_ptr *val_args;
+ struct value **val_args;
char *substrings;
char *current_substring;
int nargs = 0;
addr_string = savestring (frame_exp, p - frame_exp);
{
- value_ptr vp;
+ struct value *vp;
tmp_cleanup = make_cleanup (xfree, addr_string);
CORE_ADDR selected_frame_addr;
CORE_ADDR selected_frame_pc;
struct frame_info *frame;
- value_ptr return_value = NULL;
+ struct value *return_value = NULL;
if (selected_frame == NULL)
error ("No selected frame.");
/* formatted prompt */
{
char fmt[40], *promptp, *outp, *tmp;
- value_ptr arg_val;
+ struct value *arg_val;
DOUBLEST doubleval;
LONGEST longval;
CORE_ADDR addrval;
value of that expression. */
if (args)
{
- value_ptr val = parse_and_eval (args);
+ struct value *val = parse_and_eval (args);
exit_code = (int) value_as_long (val);
}
/* Language independent support for printing types for GDB, the GNU debugger.
Copyright 1986, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1998, 1999,
- 2000 Free Software Foundation, Inc.
+ 2000, 2001 Free Software Foundation, Inc.
This file is part of GDB.
whatis_exp (char *exp, int show)
{
struct expression *expr;
- register value_ptr val;
+ struct value *val;
register struct cleanup *old_chain = NULL;
struct type *real_type = NULL;
struct type *type;
void
maintenance_print_type (char *typename, int from_tty)
{
- register value_ptr val;
+ struct value *val;
register struct type *type;
register struct cleanup *old_chain;
struct expression *expr;
the number of string bytes printed. */
int
-value_print (value_ptr val, struct ui_file *stream, int format,
+value_print (struct value *val, struct ui_file *stream, int format,
enum val_prettyprint pretty)
{
if (val == 0)