[PATCH 197/203] Inline expression constructor

Tom Tromey
2021-01-01T21:49:58Z

The struct expression constructor no longer does any real work, so
this inlines it. The default destructor can also be used now as well.

gdb/ChangeLog
2021-01-01 Tom Tromey <tom@tromey.com>

* parse.c (expression::expression, expression::~expression):
Remove.
* expression.h (struct expression): Inline constructor. Remove
destructor.
---
gdb/ChangeLog | 7 +++++++
gdb/expression.h | 8 ++++++--
gdb/parse.c | 10 ----------
3 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/gdb/expression.h b/gdb/expression.h
index 3f0ab4ec38b..83bfe753d84 100644
--- a/gdb/expression.h
+++ b/gdb/expression.h
@@ -181,8 +181,12 @@ make_operation (Arg... args)

struct expression
{
- expression (const struct language_defn *, struct gdbarch *);
- ~expression ();
+ expression (const struct language_defn *lang, struct gdbarch *arch)
+ : language_defn (lang),
+ gdbarch (arch)
+ {
+ }
+
DISABLE_COPY_AND_ASSIGN (expression);

/* Return the opcode for the outermost sub-expression of this
diff --git a/gdb/parse.c b/gdb/parse.c
index 637a9f3d246..0c4a2c6fa01 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -105,16 +105,6 @@ expr_builder::release ()
return std::move (expout);
}

-expression::expression (const struct language_defn *lang, struct gdbarch *arch)
- : language_defn (lang),
- gdbarch (arch)
-{
-}
-
-expression::~expression ()
-{
-}
-
/* Return the type of MSYMBOL, a minimal symbol of OBJFILE. If
ADDRESS_P is not NULL, set it to the MSYMBOL's resolved
address. */
--
2.26.2