summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog20
-rw-r--r--gdb/ada-lang.c24
-rw-r--r--gdb/ax-gdb.c2
-rw-r--r--gdb/c-lang.c1
-rw-r--r--gdb/expprint.c23
-rw-r--r--gdb/expression.h2
-rw-r--r--gdb/f-lang.c19
-rw-r--r--gdb/m2-lang.c1
-rw-r--r--gdb/opencl-lang.c1
-rw-r--r--gdb/parse.c1
-rw-r--r--gdb/parser-defs.h8
-rw-r--r--gdb/rust-lang.c17
12 files changed, 27 insertions, 92 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 813305d0fdc..b6c4862ae9a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,25 @@
2020-11-30 Tom Tromey <tom@tromey.com>
+ * rust-lang.c (rust_op_name): Remove.
+ (exp_descriptor_rust): Update.
+ * parser-defs.h (op_name_standard): Don't declare.
+ (struct exp_descriptor) <op_name>: Remove.
+ * parse.c (exp_descriptor_standard): Update.
+ * opencl-lang.c (exp_descriptor_opencl): Update.
+ * m2-lang.c (m2_language::exp_descriptor_modula2): Update.
+ * f-lang.c (op_name_f): Remove.
+ (f_language::exp_descriptor_tab): Update.
+ * expression.h (op_name): Update.
+ * expprint.c (op_name): Rewrite.
+ (op_name_standard): Remove.
+ (dump_raw_expression, dump_subexp): Update.
+ * c-lang.c (exp_descriptor_c): Update.
+ * ax-gdb.c (gen_expr): Update.
+ * ada-lang.c (ada_op_name): Remove.
+ (ada_exp_descriptor): Update.
+
+2020-11-30 Tom Tromey <tom@tromey.com>
+
* eval.c (init_array_element): Remove.
(evaluate_subexp_standard) <OP_ARRAY>: Remove "index_pc".
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 714227d24dd..906671155d0 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -127,8 +127,6 @@ static void replace_operator_with_call (expression_up *, int, int, int,
static int possible_user_operator_p (enum exp_opcode, struct value **);
-static const char *ada_op_name (enum exp_opcode);
-
static const char *ada_decoded_op_name (enum exp_opcode);
static int numeric_type_p (struct type *);
@@ -13289,27 +13287,6 @@ ada_operator_check (struct expression *exp, int pos,
return 0;
}
-static const char *
-ada_op_name (enum exp_opcode opcode)
-{
- switch (opcode)
- {
- default:
- return op_name_standard (opcode);
-
-#define OP_DEFN(op, len, args, binop) case op: return #op;
- ADA_OPERATORS;
-#undef OP_DEFN
-
- case OP_AGGREGATE:
- return "OP_AGGREGATE";
- case OP_CHOICES:
- return "OP_CHOICES";
- case OP_NAME:
- return "OP_NAME";
- }
-}
-
/* As for operator_length, but assumes PC is pointing at the first
element of the operator, and gives meaningful results only for the
Ada-specific operators, returning 0 for *OPLENP and *ARGSP otherwise. */
@@ -13601,7 +13578,6 @@ static const struct exp_descriptor ada_exp_descriptor = {
ada_print_subexp,
ada_operator_length,
ada_operator_check,
- ada_op_name,
ada_dump_subexp_body,
ada_evaluate_subexp
};
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index 601c7522a3b..cea37da5586 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -2266,7 +2266,7 @@ gen_expr (struct expression *exp, union exp_element **pc,
default:
error (_("Unsupported operator %s (%d) in expression."),
- op_name (exp, op), op);
+ op_name (op), op);
}
}
diff --git a/gdb/c-lang.c b/gdb/c-lang.c
index 624aea52f77..2a17e007fd0 100644
--- a/gdb/c-lang.c
+++ b/gdb/c-lang.c
@@ -846,7 +846,6 @@ const struct exp_descriptor exp_descriptor_c =
print_subexp_standard,
operator_length_standard,
operator_check_standard,
- op_name_standard,
dump_subexp_body_standard,
evaluate_subexp_c
};
diff --git a/gdb/expprint.c b/gdb/expprint.c
index 29e6237ab4d..f1cf62e1c9a 100644
--- a/gdb/expprint.c
+++ b/gdb/expprint.c
@@ -685,26 +685,11 @@ op_string (enum exp_opcode op)
static int dump_subexp_body (struct expression *exp, struct ui_file *, int);
-/* Name for OPCODE, when it appears in expression EXP. */
-
-const char *
-op_name (struct expression *exp, enum exp_opcode opcode)
-{
- if (opcode >= OP_UNUSED_LAST)
- {
- char *cell = get_print_cell ();
- xsnprintf (cell, PRINT_CELL_SIZE, "unknown opcode: %u",
- unsigned (opcode));
- return cell;
- }
- return exp->language_defn->expression_ops ()->op_name (opcode);
-}
-
/* Default name for the standard operator OPCODE (i.e., one defined in
the definition of enum exp_opcode). */
const char *
-op_name_standard (enum exp_opcode opcode)
+op_name (enum exp_opcode opcode)
{
switch (opcode)
{
@@ -719,6 +704,8 @@ op_name_standard (enum exp_opcode opcode)
case name: \
return #name ;
#include "std-operator.def"
+#include "ada-operator.def"
+#include "fortran-operator.def"
#undef OP
}
}
@@ -747,7 +734,7 @@ dump_raw_expression (struct expression *exp, struct ui_file *stream,
{
fprintf_filtered (stream, "\t%5d ", elt);
- const char *opcode_name = op_name (exp, exp->elts[elt].opcode);
+ const char *opcode_name = op_name (exp->elts[elt].opcode);
fprintf_filtered (stream, "%20s ", opcode_name);
print_longest (stream, 'd', 0, exp->elts[elt].longconst);
@@ -782,7 +769,7 @@ dump_subexp (struct expression *exp, struct ui_file *stream, int elt)
fprintf_filtered (stream, " ");
indent += 2;
- fprintf_filtered (stream, "%-20s ", op_name (exp, exp->elts[elt].opcode));
+ fprintf_filtered (stream, "%-20s ", op_name (exp->elts[elt].opcode));
elt = dump_subexp_body (exp, stream, elt);
diff --git a/gdb/expression.h b/gdb/expression.h
index 8de712310ec..a8bfac17d8b 100644
--- a/gdb/expression.h
+++ b/gdb/expression.h
@@ -171,7 +171,7 @@ extern struct value *evaluate_subexp_do_call (expression *exp,
extern void print_expression (struct expression *, struct ui_file *);
-extern const char *op_name (struct expression *exp, enum exp_opcode opcode);
+extern const char *op_name (enum exp_opcode opcode);
extern const char *op_string (enum exp_opcode);
diff --git a/gdb/f-lang.c b/gdb/f-lang.c
index 4171c96c8a9..6771758bacb 100644
--- a/gdb/f-lang.c
+++ b/gdb/f-lang.c
@@ -1072,24 +1072,6 @@ print_subexp_f (struct expression *exp, int *pos,
}
}
-/* Special expression names for Fortran. */
-
-static const char *
-op_name_f (enum exp_opcode opcode)
-{
- switch (opcode)
- {
- default:
- return op_name_standard (opcode);
-
-#define OP(name) \
- case name: \
- return #name ;
-#include "fortran-operator.def"
-#undef OP
- }
-}
-
/* Special expression dumping for Fortran. */
static int
@@ -1159,7 +1141,6 @@ const struct exp_descriptor f_language::exp_descriptor_tab =
print_subexp_f,
operator_length_f,
operator_check_f,
- op_name_f,
dump_subexp_body_f,
evaluate_subexp_f
};
diff --git a/gdb/m2-lang.c b/gdb/m2-lang.c
index 1155469e0a5..2576dcafc53 100644
--- a/gdb/m2-lang.c
+++ b/gdb/m2-lang.c
@@ -167,7 +167,6 @@ const struct exp_descriptor m2_language::exp_descriptor_modula2 =
print_subexp_standard,
operator_length_standard,
operator_check_standard,
- op_name_standard,
dump_subexp_body_standard,
evaluate_subexp_modula2
};
diff --git a/gdb/opencl-lang.c b/gdb/opencl-lang.c
index 830a6acaaab..ca3a82b1088 100644
--- a/gdb/opencl-lang.c
+++ b/gdb/opencl-lang.c
@@ -948,7 +948,6 @@ const struct exp_descriptor exp_descriptor_opencl =
print_subexp_standard,
operator_length_standard,
operator_check_standard,
- op_name_standard,
dump_subexp_body_standard,
evaluate_subexp_opencl
};
diff --git a/gdb/parse.c b/gdb/parse.c
index 8b9dfba0fb7..c34b6085cd0 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -59,7 +59,6 @@ const struct exp_descriptor exp_descriptor_standard =
print_subexp_standard,
operator_length_standard,
operator_check_standard,
- op_name_standard,
dump_subexp_body_standard,
evaluate_subexp_standard
};
diff --git a/gdb/parser-defs.h b/gdb/parser-defs.h
index bc6fc2f9ba3..17216057b18 100644
--- a/gdb/parser-defs.h
+++ b/gdb/parser-defs.h
@@ -355,8 +355,6 @@ extern int operator_check_standard (struct expression *exp, int pos,
(struct objfile *objfile, void *data),
void *data);
-extern const char *op_name_standard (enum exp_opcode);
-
extern bool parse_float (const char *p, int len,
const struct type *type, gdb_byte *data);
@@ -417,12 +415,6 @@ struct exp_descriptor
void *data),
void *data);
- /* Name of this operator for dumping purposes.
- The returned value should never be NULL, even if EXP_OPCODE is
- an unknown opcode (a string containing an image of the numeric
- value of the opcode can be returned, for instance). */
- const char *(*op_name) (enum exp_opcode);
-
/* Dump the rest of this (prefix) expression after the operator
itself has been printed. See dump_subexp_body_standard in
(expprint.c). */
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
index fb2f2d5e8e4..b89fd30491a 100644
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -1680,22 +1680,6 @@ rust_operator_length (const struct expression *exp, int pc, int *oplenp,
*argsp = args;
}
-/* op_name implementation for Rust. */
-
-static const char *
-rust_op_name (enum exp_opcode opcode)
-{
- switch (opcode)
- {
- case OP_AGGREGATE:
- return "OP_AGGREGATE";
- case OP_OTHERS:
- return "OP_OTHERS";
- default:
- return op_name_standard (opcode);
- }
-}
-
/* dump_subexp_body implementation for Rust. */
static int
@@ -1869,7 +1853,6 @@ static const struct exp_descriptor exp_descriptor_rust =
rust_print_subexp,
rust_operator_length,
rust_operator_check,
- rust_op_name,
rust_dump_subexp_body,
rust_evaluate_subexp
};