Remove per-language op_name functions
authorTom Tromey <tom@tromey.com>
Mon, 30 Nov 2020 08:37:10 +0000 (01:37 -0700)
committerTom Tromey <tom@tromey.com>
Mon, 30 Nov 2020 08:37:10 +0000 (01:37 -0700)
commit88b91969e1ae5d23f81b86ae6cd3c85b284c6294
tree33a677f9adac503851cc9e659d7e2b896e11dddd
parent1cd49c43f340e4de62922356ed859ee806e52f6f
Remove per-language op_name functions

enum exp_opcode is created from all the .def files, but then each
language is required to implement its own op_name function to turn an
enum value to a string.  This seemed over-complicated to me, and this
patch removes the per-language functions in favor of simply using the
.def names for all languages.  Note that op_name is only used for
dumping expressions, which is a maintainer/debug feature.
Furthermore, I don't think there was any case where the .def name and
the string name differed.

gdb/ChangeLog
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.
12 files changed:
gdb/ChangeLog
gdb/ada-lang.c
gdb/ax-gdb.c
gdb/c-lang.c
gdb/expprint.c
gdb/expression.h
gdb/f-lang.c
gdb/m2-lang.c
gdb/opencl-lang.c
gdb/parse.c
gdb/parser-defs.h
gdb/rust-lang.c