]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
fortran: change subrange enum to bit field
authorChristoph Weinmann <christoph.t.weinmann@intel.com>
Mon, 23 Nov 2015 09:31:44 +0000 (10:31 +0100)
committerBernhard Heckel <bernhard.heckel@intel.com>
Wed, 7 Sep 2016 10:08:45 +0000 (12:08 +0200)
commit57113d3763d3890eef283e53706c6654b017ab51
treef22a82970110376b463fdf2da4c0344b20516bf3
parent75d2491453a4224be083aaf15cfd3865443dcfd3
fortran: change subrange enum to bit field

Change Fortran subrange enum for subrange expressions to
represent a bitfield for easier manipulation.  Consequently
also change occurences and evaluation of said enum.  The
behaviour of GDB is unchanged.

2013-11-27  Christoph Weinmann  <christoph.t.weinmann@intel.com>

* eval.c (value_f90_subarray): Change evaluation of the
subarray boundaries.  Set boundaries to be either user
provided (bit in range_type was set), or take the default
value if the boundary was not provided by the user.
* expprint.c (print_subexp_standard): Alter boundary com-
putations to use updated range_type enum.
* expprint.h (dump_subexp_body_standard): Dito.
* expression.h (range_type): Change the enum to use bit
values for each boundary, if set by the user.
* f-exp.y (subrange): Change rules for subrange expressions
to write the relevant bit sequence onto the elt stack.
* parse.c (operator_length_standard): In case of OP_RANGE
change the calculation of the number of arguments on the
elt stack, depending on the number of boundaries provided
by the user.
* rust-exp.y (convert_ast_to_expression): Modify calcula-
tion of subscript elements to use altered range_type.
* rust-lang.c (rust_range): Dito.
* rust-lang.c (rust_subscript): Dito.

Signed-off-by: Christoph Weinmann <christoph.t.weinmann@intel.com>
gdb/eval.c
gdb/expprint.c
gdb/expression.h
gdb/f-exp.y
gdb/parse.c
gdb/rust-exp.y
gdb/rust-lang.c