From patchwork Mon Jun 6 14:41:12 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 12797 Received: (qmail 110301 invoked by alias); 6 Jun 2016 14:41:41 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 110288 invoked by uid 89); 6 Jun 2016 14:41:40 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.7 required=5.0 tests=AWL, BAYES_00, FSL_HELO_HOME, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=no version=3.3.2 spammy=sk:af4ddcc, H*MI:tom X-HELO: gproxy6-pub.mail.unifiedlayer.com Received: from gproxy6-pub.mail.unifiedlayer.com (HELO gproxy6-pub.mail.unifiedlayer.com) (67.222.39.168) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with SMTP; Mon, 06 Jun 2016 14:41:29 +0000 Received: (qmail 1765 invoked by uid 0); 6 Jun 2016 14:41:26 -0000 Received: from unknown (HELO CMOut01) (10.0.90.82) by gproxy6.mail.unifiedlayer.com with SMTP; 6 Jun 2016 14:41:26 -0000 Received: from box522.bluehost.com ([74.220.219.122]) by CMOut01 with id 3ShJ1t00T2f2jeq01ShMFR; Mon, 06 Jun 2016 08:41:24 -0600 X-Authority-Analysis: v=2.1 cv=OPe0g0qB c=1 sm=1 tr=0 a=GsOEXm/OWkKvwdLVJsfwcA==:117 a=GsOEXm/OWkKvwdLVJsfwcA==:17 a=L9H7d07YOLsA:10 a=9cW_t1CCXrUA:10 a=s5jvgZ67dGcA:10 a=PnD2wP_eR3oA:10 a=-N9Dh3nx2ZYA:10 a=pD_ry4oyNxEA:10 a=zstS-IiYAAAA:8 a=qUXFsv20AAAA:8 a=hy5mGW3xLIxOTAxcmE8A:9 a=IlRBnb4WYaDdjKC1:21 a=6jxj5QKFbF9xstbT:21 a=4G6NA9xxw8l3yy4pmD5M:22 a=9MODbo6-FXLeArg8YEg9:22 Received: from [65.128.48.199] (port=44696 helo=bapiya.Home) by box522.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.86_2) (envelope-from ) id 1b9viR-0003Am-3T; Mon, 06 Jun 2016 08:41:19 -0600 From: Tom Tromey To: gdb-patches@sourceware.org Cc: Tom Tromey Subject: [RFA] Constify arch_type and friends Date: Mon, 6 Jun 2016 08:41:12 -0600 Message-Id: <1465224072-25491-1-git-send-email-tom@tromey.com> X-Identified-User: {36111:box522.bluehost.com:elynrobi:tromey.com} {sentby:smtp auth 65.128.48.199 authed with tom+tromey.com} X-Exim-ID: 1b9viR-0003Am-3T X-Source-Sender: (bapiya.Home) [65.128.48.199]:44696 X-Source-Auth: tom+tromey.com X-Email-Count: 0 X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTIyLmJsdWVob3N0LmNvbQ== 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-06 Tom Tromey * 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. --- gdb/ChangeLog | 15 +++++++++++++++ gdb/gdbtypes.c | 28 +++++++++++++++------------- gdb/gdbtypes.h | 31 ++++++++++++++++++------------- 3 files changed, 48 insertions(+), 26 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index af4ddcc..5f39c5d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,18 @@ +2016-06-06 Tom Tromey + + * 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-02 Jon Turney * windows-nat.c (handle_output_debug_string): Return type of 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);