From dbca589b8d72316a5884321747b6ab92c6b34dbc Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Tue, 14 Feb 2023 14:23:26 -0500 Subject: [PATCH] gdb: add constructor to internalvar Add a constructor that takes the name as a parameter. Initialize the next and kind fields inline. Change-Id: Ic4db0aba85f1da9f12f3eee0ac62c0e5ef0cfe88 Approved-By: Tom Tromey --- gdb/value.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gdb/value.c b/gdb/value.c index 4b3ec771266..1b74a6ecc4f 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -1829,14 +1829,18 @@ union internalvar_data struct internalvar { - struct internalvar *next; + internalvar (std::string name) + : name (std::move (name)) + {} + + struct internalvar *next = nullptr; std::string name; /* We support various different kinds of content of an internal variable. enum internalvar_kind specifies the kind, and union internalvar_data provides the data associated with this particular kind. */ - enum internalvar_kind kind; + enum internalvar_kind kind = INTERNALVAR_VOID; union internalvar_data u; }; @@ -1922,10 +1926,8 @@ complete_internalvar (completion_tracker &tracker, const char *name) struct internalvar * create_internalvar (const char *name) { - internalvar *var = new internalvar; + internalvar *var = new internalvar (name); - var->name = name; - var->kind = INTERNALVAR_VOID; var->next = internalvars; internalvars = var; return var; -- 2.30.2