aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2019-03-31 13:43:54 -0600
committerTom Tromey <tom@tromey.com>2019-04-04 19:55:11 -0600
commitdac43e327d002107f6bc9481749de039f410df73 (patch)
treee3f3ae3d7b892d2a68e271127e5b53cf75e2c0d0 /ld
parent2a61252965c91540133bece7deb92eb22e3cf929 (diff)
downloadbinutils-dac43e327d002107f6bc9481749de039f410df73.zip
binutils-dac43e327d002107f6bc9481749de039f410df73.tar.gz
binutils-dac43e327d002107f6bc9481749de039f410df73.tar.bz2
Move type stack handling to a new class
This introduces a new "type_stack" class, and moves all the parser type stack handling to this class. Parsers that wish to use this facility must now instantiate this class somehow. I chose this approach because a minority of the existing parsers require this. gdb/ChangeLog 2019-04-04 Tom Tromey <tom@tromey.com> * type-stack.h: New file. * type-stack.c: New file. * parser-defs.h (enum type_pieces, union type_stack_elt): Move to type-stack.h. (insert_into_type_stack, insert_type, push_type, push_type_int) (insert_type_address_space, pop_type, pop_type_int) (pop_typelist, pop_type_stack, append_type_stack) (push_type_stack, get_type_stack, push_typelist) (follow_type_instance_flags, follow_types): Don't declare. * parse.c (type_stack): Remove global. (parse_exp_in_context): Update. (insert_into_type_stack, insert_type, push_type, push_type_int) (insert_type_address_space, pop_type, pop_type_int) (pop_typelist, pop_type_stack, append_type_stack) (push_type_stack, get_type_stack, push_typelist) (follow_type_instance_flags, follow_types): Remove (moved to type-stack.c). * f-exp.y (type_stack): New global. Update rules. (push_kind_type, f_parse): Update. * d-exp.y (type_stack): New global. Update rules. (d_parse): Update. * c-exp.y (struct c_parse_state) <type_stack>: New member. Update rules. * Makefile.in (COMMON_SFILES): Add type-stack.c. (HFILES_NO_SRCDIR): Add type-stack.h.
Diffstat (limited to 'ld')
0 files changed, 0 insertions, 0 deletions