From: Tom Tromey Date: Fri, 3 Feb 2017 04:21:19 +0000 (-0700) Subject: Use bool in Rust code X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=65c40c956fcd9443a5390d6cc36f84bd1bf77df4;p=binutils-gdb.git Use bool in Rust code This changes various functions in the Rust code to use a bool rather than an int when a boolean is intended. 2017-02-02 Tom Tromey * rust-exp.y (ends_raw_string, space_then_number) (rust_identifier_start_p): Return bool. * rust-lang.c (rust_tuple_type_p, rust_underscore_fields) (rust_tuple_struct_type_p, rust_tuple_variant_type_p) (rust_slice_type_p, rust_range_type_p, rust_u8_type_p) (rust_chartype_p): Return bool. (val_print_struct, rust_print_struct_def, rust_print_type): Update. * rust-lang.h (rust_tuple_type_p, rust_tuple_struct_type_p): Return bool. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d133a2efa5f..2f5ba2fd3b2 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,16 @@ +2017-02-02 Tom Tromey + + * rust-exp.y (ends_raw_string, space_then_number) + (rust_identifier_start_p): Return bool. + * rust-lang.c (rust_tuple_type_p, rust_underscore_fields) + (rust_tuple_struct_type_p, rust_tuple_variant_type_p) + (rust_slice_type_p, rust_range_type_p, rust_u8_type_p) + (rust_chartype_p): Return bool. + (val_print_struct, rust_print_struct_def, rust_print_type): + Update. + * rust-lang.h (rust_tuple_type_p, rust_tuple_struct_type_p): + Return bool. + 2017-02-02 Tom Tromey * rust-lang.c: Reindent. diff --git a/gdb/rust-exp.y b/gdb/rust-exp.y index 98301a48922..b3e03664e26 100644 --- a/gdb/rust-exp.y +++ b/gdb/rust-exp.y @@ -1197,7 +1197,7 @@ starts_raw_string (const char *str) /* Return true if STR looks like the end of a raw string that had N hashes at the start. */ -static int +static bool ends_raw_string (const char *str, int n) { int i; @@ -1205,8 +1205,8 @@ ends_raw_string (const char *str, int n) gdb_assert (str[0] == '"'); for (i = 0; i < n; ++i) if (str[i + 1] != '#') - return 0; - return 1; + return false; + return true; } /* Lex a string constant. */ @@ -1283,7 +1283,7 @@ lex_string (void) /* Return true if STRING starts with whitespace followed by a digit. */ -static int +static bool space_then_number (const char *string) { const char *p = string; @@ -1291,14 +1291,14 @@ space_then_number (const char *string) while (p[0] == ' ' || p[0] == '\t') ++p; if (p == string) - return 0; + return false; return *p >= '0' && *p <= '9'; } /* Return true if C can start an identifier. */ -static int +static bool rust_identifier_start_p (char c) { return ((c >= 'a' && c <= 'z') diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c index a483b96125d..a8048242860 100644 --- a/gdb/rust-lang.c +++ b/gdb/rust-lang.c @@ -272,7 +272,7 @@ rust_get_disr_info (struct type *type, const gdb_byte *valaddr, /* See rust-lang.h. */ -int +bool rust_tuple_type_p (struct type *type) { /* The current implementation is a bit of a hack, but there's @@ -287,7 +287,7 @@ rust_tuple_type_p (struct type *type) /* Return true if all non-static fields of a structlike type are in a sequence like __0, __1, __2. OFFSET lets us skip fields. */ -static int +static bool rust_underscore_fields (struct type *type, int offset) { int i, field_number; @@ -295,7 +295,7 @@ rust_underscore_fields (struct type *type, int offset) field_number = 0; if (TYPE_CODE (type) != TYPE_CODE_STRUCT) - return 0; + return false; for (i = 0; i < TYPE_NFIELDS (type); ++i) { if (!field_is_static (&TYPE_FIELD (type, i))) @@ -308,17 +308,17 @@ rust_underscore_fields (struct type *type, int offset) xsnprintf (buf, sizeof (buf), "__%d", field_number); if (strcmp (buf, TYPE_FIELD_NAME (type, i)) != 0) - return 0; + return false; field_number++; } } } - return 1; + return true; } /* See rust-lang.h. */ -int +bool rust_tuple_struct_type_p (struct type *type) { /* This is just an approximation until DWARF can represent Rust more @@ -329,7 +329,7 @@ rust_tuple_struct_type_p (struct type *type) /* Return true if a variant TYPE is a tuple variant, false otherwise. */ -static int +static bool rust_tuple_variant_type_p (struct type *type) { /* First field is discriminant */ @@ -338,7 +338,7 @@ rust_tuple_variant_type_p (struct type *type) /* Return true if TYPE is a slice type, otherwise false. */ -static int +static bool rust_slice_type_p (struct type *type) { return (TYPE_CODE (type) == TYPE_CODE_STRUCT @@ -348,7 +348,7 @@ rust_slice_type_p (struct type *type) /* Return true if TYPE is a range type, otherwise false. */ -static int +static bool rust_range_type_p (struct type *type) { int i; @@ -357,22 +357,22 @@ rust_range_type_p (struct type *type) || TYPE_NFIELDS (type) > 2 || TYPE_TAG_NAME (type) == NULL || strstr (TYPE_TAG_NAME (type), "::Range") == NULL) - return 0; + return false; if (TYPE_NFIELDS (type) == 0) - return 1; + return true; i = 0; if (strcmp (TYPE_FIELD_NAME (type, 0), "start") == 0) { if (TYPE_NFIELDS (type) == 1) - return 1; + return true; i = 1; } else if (TYPE_NFIELDS (type) == 2) { /* First field had to be "start". */ - return 0; + return false; } return strcmp (TYPE_FIELD_NAME (type, i), "end") == 0; @@ -380,7 +380,7 @@ rust_range_type_p (struct type *type) /* Return true if TYPE seems to be the type "u8", otherwise false. */ -static int +static bool rust_u8_type_p (struct type *type) { return (TYPE_CODE (type) == TYPE_CODE_INT @@ -390,7 +390,7 @@ rust_u8_type_p (struct type *type) /* Return true if TYPE is a Rust character type. */ -static int +static bool rust_chartype_p (struct type *type) { return (TYPE_CODE (type) == TYPE_CODE_CHAR @@ -479,8 +479,8 @@ val_print_struct (struct type *type, int embedded_offset, { int i; int first_field; - int is_tuple = rust_tuple_type_p (type); - int is_tuple_struct = !is_tuple && rust_tuple_struct_type_p (type); + bool is_tuple = rust_tuple_type_p (type); + bool is_tuple_struct = !is_tuple && rust_tuple_struct_type_p (type); struct value_print_options opts; if (!is_tuple) @@ -763,7 +763,8 @@ rust_print_struct_def (struct type *type, const char *varstring, struct ui_file *stream, int show, int level, const struct type_print_options *flags) { - int is_tuple_struct, i; + bool is_tuple_struct; + int i; /* Print a tuple type simply. */ if (rust_tuple_type_p (type)) @@ -988,7 +989,7 @@ rust_print_type (struct type *type, const char *varstring, if (TYPE_NFIELDS (variant_type) > skip_to) { int first = 1; - int is_tuple = rust_tuple_variant_type_p (variant_type); + bool is_tuple = rust_tuple_variant_type_p (variant_type); int j; fputs_filtered (is_tuple ? "(" : "{", stream); diff --git a/gdb/rust-lang.h b/gdb/rust-lang.h index 6c627ae71c8..8f2b6826c15 100644 --- a/gdb/rust-lang.h +++ b/gdb/rust-lang.h @@ -30,10 +30,10 @@ extern int rust_parse (struct parser_state *); extern void rustyyerror (char *); /* Return true if TYPE is a tuple type; otherwise false. */ -extern int rust_tuple_type_p (struct type *type); +extern bool rust_tuple_type_p (struct type *type); /* Return true if TYPE is a tuple struct type; otherwise false. */ -extern int rust_tuple_struct_type_p (struct type *type); +extern bool rust_tuple_struct_type_p (struct type *type); /* Given a block, find the name of the block's crate. Returns an empty stringif no crate name can be found. */