From: Simon Marchi Date: Tue, 14 Feb 2023 19:23:26 +0000 (-0500) Subject: gdb: add constructor to internalvar X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=dbca589b8d72316a5884321747b6ab92c6b34dbc;p=binutils-gdb.git 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 --- 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;