Change type_stack::insert to take gdbarch

This changes type_stack::insert to take a gdbarch rather than an
expr_builder.  This is simpler and means that type_stack doesn't have
to know anything about expression building; the parser-defs.h include
can be removed.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
This commit is contained in:
Tom Tromey
2025-08-23 11:51:03 -06:00
parent c152f17e36
commit 6038b11258
3 changed files with 5 additions and 7 deletions

View File

@@ -1248,12 +1248,12 @@ single_qualifier:
{ cpstate->type_stack.insert (tp_restrict); }
| '@' NAME
{
cpstate->type_stack.insert (pstate,
cpstate->type_stack.insert (pstate->gdbarch (),
copy_name ($2.stoken).c_str ());
}
| '@' UNKNOWN_CPP_NAME
{
cpstate->type_stack.insert (pstate,
cpstate->type_stack.insert (pstate->gdbarch (),
copy_name ($2.stoken).c_str ());
}
;

View File

@@ -20,7 +20,6 @@
#include "type-stack.h"
#include "gdbtypes.h"
#include "parser-defs.h"
/* See type-stack.h. */
@@ -51,7 +50,7 @@ type_stack::insert (enum type_pieces tp)
/* See type-stack.h. */
void
type_stack::insert (struct expr_builder *pstate, const char *string)
type_stack::insert (struct gdbarch *gdbarch, const char *string)
{
union type_stack_elt element;
int slot;
@@ -67,8 +66,7 @@ type_stack::insert (struct expr_builder *pstate, const char *string)
element.piece = tp_space_identifier;
insert_into (slot, element);
element.int_val
= address_space_name_to_type_instance_flags (pstate->gdbarch (),
string);
= address_space_name_to_type_instance_flags (gdbarch, string);
insert_into (slot, element);
}

View File

@@ -212,7 +212,7 @@ public:
stack is a tp_pointer, and the new values are inserted above the
first item. */
void insert (struct expr_builder *pstate, const char *string);
void insert (struct gdbarch *gdbarch, const char *string);
/* Append the elements of the type stack FROM to the type stack
THIS. Always returns THIS. */