aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2016-06-06 08:06:15 -0600
committerTom Tromey <tom@tromey.com>2016-06-10 10:10:17 -0600
commit695bfa52ccf22058e371828c3636a3d74424ec5b (patch)
tree7028ec77f5549b675d1333cae0c6e1d0559a1ef6
parent347dc1025db1c0acf616ab6520c3f36448f25e8b (diff)
downloadgdb-695bfa52ccf22058e371828c3636a3d74424ec5b.zip
gdb-695bfa52ccf22058e371828c3636a3d74424ec5b.tar.gz
gdb-695bfa52ccf22058e371828c3636a3d74424ec5b.tar.bz2
Constify arch_type and friends
While working on the Rust support, I happened to notice that arch_type and related functions take "char *" arguments, where "const char *" would be more correct. This patch fixes this oversight. Tested by rebuilding. 2016-06-10 Tom Tromey <tom@tromey.com> * gdbtypes.c (arch_type, arch_integer_type, arch_character_type) (arch_boolean_type, arch_float_type, arch_complex_type) (arch_flags_type, append_flags_type_field) (append_flags_type_flag, arch_composite_type) (append_composite_type_field_raw) (append_composite_type_field_aligned) (append_composite_type_field): Make "name" parameter const. * gdbtypes.h (arch_type, arch_integer_type, arch_character_type) (arch_boolean_type, arch_float_type, arch_complex_type) (append_composite_type_field, append_composite_type_field_aligned) (append_composite_type_field_raw, arch_flags_type) (append_flags_type_field, append_flags_type_flag): Constify.
-rw-r--r--gdb/ChangeLog15
-rw-r--r--gdb/gdbtypes.c28
-rw-r--r--gdb/gdbtypes.h31
3 files changed, 48 insertions, 26 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1a4a002..335476b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,20 @@
2016-06-10 Tom Tromey <tom@tromey.com>
+ * gdbtypes.c (arch_type, arch_integer_type, arch_character_type)
+ (arch_boolean_type, arch_float_type, arch_complex_type)
+ (arch_flags_type, append_flags_type_field)
+ (append_flags_type_flag, arch_composite_type)
+ (append_composite_type_field_raw)
+ (append_composite_type_field_aligned)
+ (append_composite_type_field): Make "name" parameter const.
+ * gdbtypes.h (arch_type, arch_integer_type, arch_character_type)
+ (arch_boolean_type, arch_float_type, arch_complex_type)
+ (append_composite_type_field, append_composite_type_field_aligned)
+ (append_composite_type_field_raw, arch_flags_type)
+ (append_flags_type_field, append_flags_type_flag): Constify.
+
+2016-06-10 Tom Tromey <tom@tromey.com>
+
PR rust/20110:
* rust-exp.y (lex_number): Don't truncate large numbers to i32.
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 9e1759b..48f2cd3 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -4629,7 +4629,7 @@ copy_type (const struct type *type)
struct type *
arch_type (struct gdbarch *gdbarch,
- enum type_code code, int length, char *name)
+ enum type_code code, int length, const char *name)
{
struct type *type;
@@ -4649,7 +4649,7 @@ arch_type (struct gdbarch *gdbarch,
struct type *
arch_integer_type (struct gdbarch *gdbarch,
- int bit, int unsigned_p, char *name)
+ int bit, int unsigned_p, const char *name)
{
struct type *t;
@@ -4668,7 +4668,7 @@ arch_integer_type (struct gdbarch *gdbarch,
struct type *
arch_character_type (struct gdbarch *gdbarch,
- int bit, int unsigned_p, char *name)
+ int bit, int unsigned_p, const char *name)
{
struct type *t;
@@ -4685,7 +4685,7 @@ arch_character_type (struct gdbarch *gdbarch,
struct type *
arch_boolean_type (struct gdbarch *gdbarch,
- int bit, int unsigned_p, char *name)
+ int bit, int unsigned_p, const char *name)
{
struct type *t;
@@ -4703,7 +4703,8 @@ arch_boolean_type (struct gdbarch *gdbarch,
struct type *
arch_float_type (struct gdbarch *gdbarch,
- int bit, char *name, const struct floatformat **floatformats)
+ int bit, const char *name,
+ const struct floatformat **floatformats)
{
struct type *t;
@@ -4734,7 +4735,7 @@ arch_float_type (struct gdbarch *gdbarch,
struct type *
arch_complex_type (struct gdbarch *gdbarch,
- char *name, struct type *target_type)
+ const char *name, struct type *target_type)
{
struct type *t;
@@ -4748,7 +4749,7 @@ arch_complex_type (struct gdbarch *gdbarch,
NAME is the type name. LENGTH is the size of the flag word in bytes. */
struct type *
-arch_flags_type (struct gdbarch *gdbarch, char *name, int length)
+arch_flags_type (struct gdbarch *gdbarch, const char *name, int length)
{
int max_nfields = length * TARGET_CHAR_BIT;
struct type *type;
@@ -4769,7 +4770,7 @@ arch_flags_type (struct gdbarch *gdbarch, char *name, int length)
void
append_flags_type_field (struct type *type, int start_bitpos, int nr_bits,
- struct type *field_type, char *name)
+ struct type *field_type, const char *name)
{
int type_bitsize = TYPE_LENGTH (type) * TARGET_CHAR_BIT;
int field_nr = TYPE_NFIELDS (type);
@@ -4792,7 +4793,7 @@ append_flags_type_field (struct type *type, int start_bitpos, int nr_bits,
position BITPOS is called NAME. */
void
-append_flags_type_flag (struct type *type, int bitpos, char *name)
+append_flags_type_flag (struct type *type, int bitpos, const char *name)
{
struct gdbarch *gdbarch = get_type_arch (type);
@@ -4805,7 +4806,8 @@ append_flags_type_flag (struct type *type, int bitpos, char *name)
specified by CODE) associated with GDBARCH. NAME is the type name. */
struct type *
-arch_composite_type (struct gdbarch *gdbarch, char *name, enum type_code code)
+arch_composite_type (struct gdbarch *gdbarch, const char *name,
+ enum type_code code)
{
struct type *t;
@@ -4821,7 +4823,7 @@ arch_composite_type (struct gdbarch *gdbarch, char *name, enum type_code code)
the caller should do so. Return the new field. */
struct field *
-append_composite_type_field_raw (struct type *t, char *name,
+append_composite_type_field_raw (struct type *t, const char *name,
struct type *field)
{
struct field *f;
@@ -4840,7 +4842,7 @@ append_composite_type_field_raw (struct type *t, char *name,
ALIGNMENT (if non-zero) specifies the minimum field alignment. */
void
-append_composite_type_field_aligned (struct type *t, char *name,
+append_composite_type_field_aligned (struct type *t, const char *name,
struct type *field, int alignment)
{
struct field *f = append_composite_type_field_raw (t, name, field);
@@ -4880,7 +4882,7 @@ append_composite_type_field_aligned (struct type *t, char *name,
/* Add new field with name NAME and type FIELD to composite type T. */
void
-append_composite_type_field (struct type *t, char *name,
+append_composite_type_field (struct type *t, const char *name,
struct type *field)
{
append_composite_type_field_aligned (t, name, field, 0);
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
index c651c88..91e3eb9 100644
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -1676,13 +1676,17 @@ extern struct type *init_type (enum type_code, int, int, const char *,
struct objfile *);
/* Helper functions to construct architecture-owned types. */
-extern struct type *arch_type (struct gdbarch *, enum type_code, int, char *);
-extern struct type *arch_integer_type (struct gdbarch *, int, int, char *);
-extern struct type *arch_character_type (struct gdbarch *, int, int, char *);
-extern struct type *arch_boolean_type (struct gdbarch *, int, int, char *);
-extern struct type *arch_float_type (struct gdbarch *, int, char *,
+extern struct type *arch_type (struct gdbarch *, enum type_code, int,
+ const char *);
+extern struct type *arch_integer_type (struct gdbarch *, int, int,
+ const char *);
+extern struct type *arch_character_type (struct gdbarch *, int, int,
+ const char *);
+extern struct type *arch_boolean_type (struct gdbarch *, int, int,
+ const char *);
+extern struct type *arch_float_type (struct gdbarch *, int, const char *,
const struct floatformat **);
-extern struct type *arch_complex_type (struct gdbarch *, char *,
+extern struct type *arch_complex_type (struct gdbarch *, const char *,
struct type *);
/* Helper functions to construct a struct or record type. An
@@ -1692,25 +1696,26 @@ extern struct type *arch_complex_type (struct gdbarch *, char *,
field packed against the previous. */
extern struct type *arch_composite_type (struct gdbarch *gdbarch,
- char *name, enum type_code code);
-extern void append_composite_type_field (struct type *t, char *name,
+ const char *name, enum type_code code);
+extern void append_composite_type_field (struct type *t, const char *name,
struct type *field);
extern void append_composite_type_field_aligned (struct type *t,
- char *name,
+ const char *name,
struct type *field,
int alignment);
-struct field *append_composite_type_field_raw (struct type *t, char *name,
+struct field *append_composite_type_field_raw (struct type *t, const char *name,
struct type *field);
/* Helper functions to construct a bit flags type. An initially empty
type is created using arch_flag_type(). Flags are then added using
append_flag_type_field() and append_flag_type_flag(). */
extern struct type *arch_flags_type (struct gdbarch *gdbarch,
- char *name, int length);
+ const char *name, int length);
extern void append_flags_type_field (struct type *type,
int start_bitpos, int nr_bits,
- struct type *field_type, char *name);
-extern void append_flags_type_flag (struct type *type, int bitpos, char *name);
+ struct type *field_type, const char *name);
+extern void append_flags_type_flag (struct type *type, int bitpos,
+ const char *name);
extern void make_vector_type (struct type *array_type);
extern struct type *init_vector_type (struct type *elt_type, int n);