diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2009-06-03 18:16:44 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2009-06-03 18:16:44 +0000 |
commit | 4fa62494657f9b422edd7049c7207bd6c6849c3f (patch) | |
tree | 95b9aff30ec88b11de20b097d9803e93b4303069 /gdb/breakpoint.c | |
parent | 6ceaaae57734058aa008b218f3b44581c5655a56 (diff) | |
download | gdb-4fa62494657f9b422edd7049c7207bd6c6849c3f.zip gdb-4fa62494657f9b422edd7049c7207bd6c6849c3f.tar.gz gdb-4fa62494657f9b422edd7049c7207bd6c6849c3f.tar.bz2 |
* value.h (struct internalvar): Remove.
(get_internalvar_integer): Add prototype.
(set_internalvar_integer): Add prototype.
(clear_internalvar): Add prototype.
* value.c (struct internalvar): Move here. Add type member. Remove
endian member. Add union_internalvar member instead of value member.
(init_if_undefined_command): Use intvar->type.
(create_internalvar): Do not initialize value/endian, but type.
(create_internalvar_type_lazy): Call create_internalvar.
(value_of_internalvar): Handle host-side internalvar contents.
(set_internalvar_component): Likewise.
(set_internalvar): Likewise.
(get_internalvar_integer): New function.
(clear_internalvar): Likewise.
(set_internalvar_integer): Likewise.
(preserve_values): Handle host-side internalvar contents.
* breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
set_internalvar_integer instead of set_internalvar.
* findcmd.c (find_command): Likewise.
* infrun.c (handle_inferior_event): Likewise.
* source.c (forward_search_command, reverse_search_command): Likewise.
* tracepoint.c (set_traceframe_num, set_tracepoint_num,
set_traceframe_context): Likewise.
* printcmd.c (x_command): Call clear_internalvar instead of
set_internalvar.
* tracepoint.c (set_traceframe_context): Likewise.
* breakpoint.c (get_number_trailer): Call get_internalvar_integer
instead of value_of_internalvar.
* linespec.c (decode_dollar): Likewise.
* expprint.c (dump_subexp_body_standard): Use internalvar_name
instead of accessing internalvar private elements.
* valops.c (value_assign): Copy from original source instead of
accessing internalvar private elements.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r-- | gdb/breakpoint.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 8b2d55e..bccfc78 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -368,8 +368,7 @@ void set_breakpoint_count (int num) { breakpoint_count = num; - set_internalvar (lookup_internalvar ("bpnum"), - value_from_longest (builtin_type_int32, (LONGEST) num)); + set_internalvar_integer (lookup_internalvar ("bpnum"), num); } /* Used in run_command to zero the hit count when a new run starts. */ @@ -421,16 +420,15 @@ get_number_trailer (char **pp, int trailer) to pass to lookup_internalvar(). */ char *varname; char *start = ++p; - struct value *val; + LONGEST val; while (isalnum (*p) || *p == '_') p++; varname = (char *) alloca (p - start + 1); strncpy (varname, start, p - start); varname[p - start] = '\0'; - val = value_of_internalvar (lookup_internalvar (varname)); - if (TYPE_CODE (value_type (val)) == TYPE_CODE_INT) - retval = (int) value_as_long (val); + if (get_internalvar_integer (lookup_internalvar (varname), &val)) + retval = (int) val; else { printf_filtered (_("Convenience variable must have integer value.\n")); @@ -8275,8 +8273,7 @@ static void set_tracepoint_count (int num) { tracepoint_count = num; - set_internalvar (lookup_internalvar ("tpnum"), - value_from_longest (builtin_type_int32, (LONGEST) num)); + set_internalvar_integer (lookup_internalvar ("tpnum"), num); } void |