This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[commit] Use bfd_byte in value.h


This changes value.h to use bfd_byte more consistently. When trying to fix the signed (string) VS unsigned (buffer) pointer warnings you very quickly run into these interfaces.
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.

Index: valops.c
===================================================================
RCS file: /cvs/src/src/gdb/valops.c,v
retrieving revision 1.155
diff -p -u -r1.155 valops.c
--- valops.c	24 Feb 2005 13:51:35 -0000	1.155
+++ valops.c	28 Apr 2005 16:13:15 -0000
@@ -2317,7 +2317,7 @@ check_field_in (struct type *type, const
    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;
 
Index: value.c
===================================================================
RCS file: /cvs/src/src/gdb/value.c,v
retrieving revision 1.27
diff -p -u -r1.27 value.c
--- value.c	20 Feb 2005 01:19:24 -0000	1.27
+++ value.c	28 Apr 2005 16:13:16 -0000
@@ -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 ch
    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 
    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, st
    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,
    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);
Index: value.h
===================================================================
RCS file: /cvs/src/src/gdb/value.h,v
retrieving revision 1.85
diff -p -u -r1.85 value.h
--- value.h	8 Mar 2005 14:35:17 -0000	1.85
+++ value.h	28 Apr 2005 16:13:16 -0000
@@ -262,11 +262,12 @@ extern LONGEST value_as_long (struct 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 
 
 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
 				  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);

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]