aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/valops.c2
-rw-r--r--gdb/value.c10
-rw-r--r--gdb/value.h18
4 files changed, 23 insertions, 14 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ec901c1..bafa202 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2005-04-28 Andrew Cagney <cagney@gnu.org>
+
+ * valops.c (check_field): Make buffer a bfd_byte.
+ * value.c (unpack_long, unpack_double, unpack_pointer)
+ (unpack_field_as_long, modify_field): Ditto.
+ * value.h: Update declarations.
+
2005-04-28 Paul Brook <paul@codesourcery.com>
* exceptions.c (print_flush): Handle NULL gdb_stdout_serial.
diff --git a/gdb/valops.c b/gdb/valops.c
index 835567f..d90d5f8 100644
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -2317,7 +2317,7 @@ check_field_in (struct type *type, const char *name)
target structure/union is defined, otherwise, return 0. */
int
-check_field (struct value *arg1, const char *name)
+check_field (struct value *arg1, const bfd_byte *name)
{
struct type *t;
diff --git a/gdb/value.c b/gdb/value.c
index 1ab5f79..08d7557 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -996,7 +996,7 @@ value_as_address (struct value *val)
to an INT (or some size). After all, it is only an offset. */
LONGEST
-unpack_long (struct type *type, const char *valaddr)
+unpack_long (struct type *type, const bfd_byte *valaddr)
{
enum type_code code = TYPE_CODE (type);
int len = TYPE_LENGTH (type);
@@ -1045,7 +1045,7 @@ unpack_long (struct type *type, const char *valaddr)
format, result is in host format. */
DOUBLEST
-unpack_double (struct type *type, const char *valaddr, int *invp)
+unpack_double (struct type *type, const bfd_byte *valaddr, int *invp)
{
enum type_code code;
int len;
@@ -1109,7 +1109,7 @@ unpack_double (struct type *type, const char *valaddr, int *invp)
to an INT (or some size). After all, it is only an offset. */
CORE_ADDR
-unpack_pointer (struct type *type, const char *valaddr)
+unpack_pointer (struct type *type, const bfd_byte *valaddr)
{
/* Assume a CORE_ADDR can fit in a LONGEST (for now). Not sure
whether we want this to be true eventually. */
@@ -1359,7 +1359,7 @@ value_fn_field (struct value **arg1p, struct fn_field *f, int j, struct type *ty
If the field is signed, we also do sign extension. */
LONGEST
-unpack_field_as_long (struct type *type, const char *valaddr, int fieldno)
+unpack_field_as_long (struct type *type, const bfd_byte *valaddr, int fieldno)
{
ULONGEST val;
ULONGEST valmask;
@@ -1406,7 +1406,7 @@ unpack_field_as_long (struct type *type, const char *valaddr, int fieldno)
0 <= BITPOS, where lbits is the size of a LONGEST in bits. */
void
-modify_field (char *addr, LONGEST fieldval, int bitpos, int bitsize)
+modify_field (bfd_byte *addr, LONGEST fieldval, int bitpos, int bitsize)
{
ULONGEST oword;
ULONGEST mask = (ULONGEST) -1 >> (8 * sizeof (ULONGEST) - bitsize);
diff --git a/gdb/value.h b/gdb/value.h
index 004c7d5..744c26c 100644
--- a/gdb/value.h
+++ b/gdb/value.h
@@ -262,11 +262,12 @@ extern LONGEST value_as_long (struct value *val);
extern DOUBLEST value_as_double (struct value *val);
extern CORE_ADDR value_as_address (struct value *val);
-extern LONGEST unpack_long (struct type *type, const char *valaddr);
-extern DOUBLEST unpack_double (struct type *type, const char *valaddr,
+extern LONGEST unpack_long (struct type *type, const bfd_byte *valaddr);
+extern DOUBLEST unpack_double (struct type *type, const bfd_byte *valaddr,
int *invp);
-extern CORE_ADDR unpack_pointer (struct type *type, const char *valaddr);
-extern LONGEST unpack_field_as_long (struct type *type, const char *valaddr,
+extern CORE_ADDR unpack_pointer (struct type *type, const bfd_byte *valaddr);
+extern LONGEST unpack_field_as_long (struct type *type,
+ const bfd_byte *valaddr,
int fieldno);
extern struct value *value_from_longest (struct type *type, LONGEST num);
@@ -451,14 +452,15 @@ extern void release_value (struct value *val);
extern int record_latest_value (struct value *val);
-extern void modify_field (char *addr, LONGEST fieldval, int bitpos,
+extern void modify_field (bfd_byte *addr, LONGEST fieldval, int bitpos,
int bitsize);
extern void type_print (struct type *type, char *varstring,
struct ui_file *stream, int show);
-extern char *baseclass_addr (struct type *type, int index, char *valaddr,
- struct value **valuep, int *errp);
+extern bfd_byte *baseclass_addr (struct type *type, int index,
+ bfd_byte *valaddr,
+ struct value **valuep, int *errp);
extern void print_longest (struct ui_file *stream, int format,
int use_local, LONGEST val);
@@ -493,7 +495,7 @@ extern void print_variable_value (struct symbol *var,
struct frame_info *frame,
struct ui_file *stream);
-extern int check_field (struct value *, const char *);
+extern int check_field (struct value *, const bfd_byte *);
extern void typedef_print (struct type *type, struct symbol *news,
struct ui_file *stream);