[binutils-gdb] Use startswith in gdb subfolder.
Martin Liska
marxin@sourceware.org
Thu Apr 1 04:39:23 GMT 2021
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=733f5eea6bde8546a4845416457174c6d716e882
commit 733f5eea6bde8546a4845416457174c6d716e882
Author: Martin Liska <mliska@suse.cz>
Date: Tue Mar 23 10:02:04 2021 +0100
Use startswith in gdb subfolder.
gdb/ChangeLog:
* cp-name-parser.y: Use startswith instead of strncmp.
* m2-exp.y: Likewise.
* macroexp.c (substitute_args): Likewise.
* mi/mi-main.c (command_notifies_uscc_observer): Likewise.
* rust-exp.y: Likewise.
Diff:
---
gdb/ChangeLog | 8 +++++++
gdb/cp-name-parser.y | 68 ++++++++++++++++++++++++++--------------------------
gdb/m2-exp.y | 4 ++--
gdb/macroexp.c | 2 +-
gdb/mi/mi-main.c | 8 +++----
gdb/rust-exp.y | 2 +-
6 files changed, 50 insertions(+), 42 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 36b2e0e3099..9684f290401 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2021-04-01 Martin Liska <mliska@suse.cz>
+
+ * cp-name-parser.y: Use startswith instead of strncmp.
+ * m2-exp.y: Likewise.
+ * macroexp.c (substitute_args): Likewise.
+ * mi/mi-main.c (command_notifies_uscc_observer): Likewise.
+ * rust-exp.y: Likewise.
+
2021-03-31 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_gdb_index::map_matching_symbols): Merge
diff --git a/gdb/cp-name-parser.y b/gdb/cp-name-parser.y
index 8514411ebeb..0688e5b085a 100644
--- a/gdb/cp-name-parser.y
+++ b/gdb/cp-name-parser.y
@@ -1511,7 +1511,7 @@ cp_parse_escape (const char **string_ptr)
}
#define HANDLE_SPECIAL(string, comp) \
- if (strncmp (tokstart, string, sizeof (string) - 1) == 0) \
+ if (startswith (tokstart, string)) \
{ \
state->lexptr = tokstart + sizeof (string) - 1; \
lvalp->lval = comp; \
@@ -1592,7 +1592,7 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
return INT;
case '(':
- if (strncmp (tokstart, "(anonymous namespace)", 21) == 0)
+ if (startswith (tokstart, "(anonymous namespace)"))
{
state->lexptr += 21;
lvalp->comp = state->make_name ("(anonymous namespace)",
@@ -1625,7 +1625,7 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
HANDLE_TOKEN2 ("->", ARROW);
/* For construction vtables. This is kind of hokey. */
- if (strncmp (tokstart, "-in-", 4) == 0)
+ if (startswith (tokstart, "-in-"))
{
state->lexptr += 4;
return CONSTRUCTION_IN;
@@ -1803,20 +1803,20 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
switch (namelen)
{
case 16:
- if (strncmp (tokstart, "reinterpret_cast", 16) == 0)
+ if (startswith (tokstart, "reinterpret_cast"))
return REINTERPRET_CAST;
break;
case 12:
- if (strncmp (tokstart, "construction vtable for ", 24) == 0)
+ if (startswith (tokstart, "construction vtable for "))
{
state->lexptr = tokstart + 24;
return CONSTRUCTION_VTABLE;
}
- if (strncmp (tokstart, "dynamic_cast", 12) == 0)
+ if (startswith (tokstart, "dynamic_cast"))
return DYNAMIC_CAST;
break;
case 11:
- if (strncmp (tokstart, "static_cast", 11) == 0)
+ if (startswith (tokstart, "static_cast"))
return STATIC_CAST;
break;
case 9:
@@ -1827,24 +1827,24 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
HANDLE_SPECIAL ("typeinfo for ", DEMANGLE_COMPONENT_TYPEINFO);
HANDLE_SPECIAL ("typeinfo fn for ", DEMANGLE_COMPONENT_TYPEINFO_FN);
HANDLE_SPECIAL ("typeinfo name for ", DEMANGLE_COMPONENT_TYPEINFO_NAME);
- if (strncmp (tokstart, "operator", 8) == 0)
+ if (startswith (tokstart, "operator"))
return OPERATOR;
- if (strncmp (tokstart, "restrict", 8) == 0)
+ if (startswith (tokstart, "restrict"))
return RESTRICT;
- if (strncmp (tokstart, "unsigned", 8) == 0)
+ if (startswith (tokstart, "unsigned"))
return UNSIGNED;
- if (strncmp (tokstart, "template", 8) == 0)
+ if (startswith (tokstart, "template"))
return TEMPLATE;
- if (strncmp (tokstart, "volatile", 8) == 0)
+ if (startswith (tokstart, "volatile"))
return VOLATILE_KEYWORD;
break;
case 7:
HANDLE_SPECIAL ("virtual thunk to ", DEMANGLE_COMPONENT_VIRTUAL_THUNK);
- if (strncmp (tokstart, "wchar_t", 7) == 0)
+ if (startswith (tokstart, "wchar_t"))
return WCHAR_T;
break;
case 6:
- if (strncmp (tokstart, "global constructors keyed to ", 29) == 0)
+ if (startswith (tokstart, "global constructors keyed to "))
{
const char *p;
state->lexptr = tokstart + 29;
@@ -1855,7 +1855,7 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
state->lexptr = p;
return DEMANGLER_SPECIAL;
}
- if (strncmp (tokstart, "global destructors keyed to ", 28) == 0)
+ if (startswith (tokstart, "global destructors keyed to "))
{
const char *p;
state->lexptr = tokstart + 28;
@@ -1868,52 +1868,52 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
}
HANDLE_SPECIAL ("vtable for ", DEMANGLE_COMPONENT_VTABLE);
- if (strncmp (tokstart, "delete", 6) == 0)
+ if (startswith (tokstart, "delete"))
return DELETE;
- if (strncmp (tokstart, "struct", 6) == 0)
+ if (startswith (tokstart, "struct"))
return STRUCT;
- if (strncmp (tokstart, "signed", 6) == 0)
+ if (startswith (tokstart, "signed"))
return SIGNED_KEYWORD;
- if (strncmp (tokstart, "sizeof", 6) == 0)
+ if (startswith (tokstart, "sizeof"))
return SIZEOF;
- if (strncmp (tokstart, "double", 6) == 0)
+ if (startswith (tokstart, "double"))
return DOUBLE_KEYWORD;
break;
case 5:
HANDLE_SPECIAL ("guard variable for ", DEMANGLE_COMPONENT_GUARD);
- if (strncmp (tokstart, "false", 5) == 0)
+ if (startswith (tokstart, "false"))
return FALSEKEYWORD;
- if (strncmp (tokstart, "class", 5) == 0)
+ if (startswith (tokstart, "class"))
return CLASS;
- if (strncmp (tokstart, "union", 5) == 0)
+ if (startswith (tokstart, "union"))
return UNION;
- if (strncmp (tokstart, "float", 5) == 0)
+ if (startswith (tokstart, "float"))
return FLOAT_KEYWORD;
- if (strncmp (tokstart, "short", 5) == 0)
+ if (startswith (tokstart, "short"))
return SHORT;
- if (strncmp (tokstart, "const", 5) == 0)
+ if (startswith (tokstart, "const"))
return CONST_KEYWORD;
break;
case 4:
- if (strncmp (tokstart, "void", 4) == 0)
+ if (startswith (tokstart, "void"))
return VOID;
- if (strncmp (tokstart, "bool", 4) == 0)
+ if (startswith (tokstart, "bool"))
return BOOL;
- if (strncmp (tokstart, "char", 4) == 0)
+ if (startswith (tokstart, "char"))
return CHAR;
- if (strncmp (tokstart, "enum", 4) == 0)
+ if (startswith (tokstart, "enum"))
return ENUM;
- if (strncmp (tokstart, "long", 4) == 0)
+ if (startswith (tokstart, "long"))
return LONG;
- if (strncmp (tokstart, "true", 4) == 0)
+ if (startswith (tokstart, "true"))
return TRUEKEYWORD;
break;
case 3:
HANDLE_SPECIAL ("VTT for ", DEMANGLE_COMPONENT_VTT);
HANDLE_SPECIAL ("non-virtual thunk to ", DEMANGLE_COMPONENT_THUNK);
- if (strncmp (tokstart, "new", 3) == 0)
+ if (startswith (tokstart, "new"))
return NEW;
- if (strncmp (tokstart, "int", 3) == 0)
+ if (startswith (tokstart, "int"))
return INT_KEYWORD;
break;
default:
diff --git a/gdb/m2-exp.y b/gdb/m2-exp.y
index 273270a85ce..b19bbeb3fb2 100644
--- a/gdb/m2-exp.y
+++ b/gdb/m2-exp.y
@@ -976,12 +976,12 @@ yylex (void)
else
{
/* Built-in BOOLEAN type. This is sort of a hack. */
- if (strncmp (tokstart, "TRUE", 4) == 0)
+ if (startswith (tokstart, "TRUE"))
{
yylval.ulval = 1;
return M2_TRUE;
}
- else if (strncmp (tokstart, "FALSE", 5) == 0)
+ else if (startswith (tokstart, "FALSE"))
{
yylval.ulval = 0;
return M2_FALSE;
diff --git a/gdb/macroexp.c b/gdb/macroexp.c
index 84584d4a00e..1ece8d5d5be 100644
--- a/gdb/macroexp.c
+++ b/gdb/macroexp.c
@@ -988,7 +988,7 @@ substitute_args (growable_macro_buffer *dest,
&keep_going))
{
bool token_is_vaopt = (tok.len == 10
- && strncmp (tok.text, "__VA_OPT__", 10) == 0);
+ && startswith (tok.text, "__VA_OPT__"));
if (vaopt_state > 0)
{
diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c
index 988db558be1..582a55490d1 100644
--- a/gdb/mi/mi-main.c
+++ b/gdb/mi/mi-main.c
@@ -1886,8 +1886,8 @@ command_notifies_uscc_observer (struct mi_parse *command)
if (command->op == CLI_COMMAND)
{
/* CLI commands "thread" and "inferior" already send it. */
- return (strncmp (command->command, "thread ", 7) == 0
- || strncmp (command->command, "inferior ", 9) == 0);
+ return (startswith (command->command, "thread ")
+ || startswith (command->command, "inferior "));
}
else /* MI_COMMAND */
{
@@ -1895,8 +1895,8 @@ command_notifies_uscc_observer (struct mi_parse *command)
&& command->argc > 1)
{
/* "thread" and "inferior" again, but through -interpreter-exec. */
- return (strncmp (command->argv[1], "thread ", 7) == 0
- || strncmp (command->argv[1], "inferior ", 9) == 0);
+ return (startswith (command->argv[1], "thread ")
+ || startswith (command->argv[1], "inferior "));
}
else
diff --git a/gdb/rust-exp.y b/gdb/rust-exp.y
index 04003409887..3750af0dc34 100644
--- a/gdb/rust-exp.y
+++ b/gdb/rust-exp.y
@@ -1986,7 +1986,7 @@ munge_name_and_block (const char **name, const struct block **block)
{
/* If it is a global reference, skip the current block in favor of
the static block. */
- if (strncmp (*name, "::", 2) == 0)
+ if (startswith (*name, "::"))
{
*name += 2;
*block = block_static_block (*block);
More information about the Gdb-cvs
mailing list