+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:
 
 
 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;
 
 
 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;
 
 
 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;
 
 
 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;
 
 
 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;
 
 
 struct type *
 arch_complex_type (struct gdbarch *gdbarch,
-                  char *name, struct type *target_type)
+                  const char *name, struct type *target_type)
 {
   struct type *t;
 
    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;
 
 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);
    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);
 
    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;
 
    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;
    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);
 /* 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);
 
                               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
    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);