[PATCHv4 0/3] Fortran Array Slicing and Striding Support

Andrew Burgess
2020-09-28T09:41:02Z

Changes since v3:

- Addressed Simon's feedback for patch #1.

- Added new patch #2 to address the enum rename suggestion from
Simon.

- Addressed Eli's feedback for what was patch #2, but is now patch
#3.

- Other than adapting to the enum rename in patch #2, the code
content of patch #3 is unchanged from v3.

I'm still super keen to get some more eyes on the changes in patch #3,
if nothing else then the changes in gdbtypes.c could really benefit
from a review.

All feedback welcome,

Thanks,
Andrew

Andrew Burgess (3):
gdb: Convert enum range_type to a bit field enum
gdb: rename 'enum range_type' to 'enum range_flag'
gdb/fortran: Add support for Fortran array slices at the GDB prompt

gdb/ChangeLog | 72 ++
gdb/Makefile.in | 1 +
gdb/NEWS | 13 +
gdb/doc/ChangeLog | 7 +
gdb/doc/gdb.texinfo | 30 +
gdb/expprint.c | 61 +-
gdb/expression.h | 33 +-
gdb/f-array-walker.h | 255 +++++++
gdb/f-exp.y | 52 +-
gdb/f-lang.c | 704 ++++++++++++++++--
gdb/f-lang.h | 19 +-
gdb/f-valprint.c | 190 ++---
gdb/gdbtypes.c | 12 +-
gdb/parse.c | 28 +-
gdb/rust-exp.y | 21 +-
gdb/rust-lang.c | 29 +-
gdb/testsuite/ChangeLog | 10 +
.../gdb.fortran/array-slices-bad.exp | 69 ++
.../gdb.fortran/array-slices-bad.f90 | 42 ++
.../gdb.fortran/array-slices-sub-slices.exp | 111 +++
.../gdb.fortran/array-slices-sub-slices.f90 | 96 +++
gdb/testsuite/gdb.fortran/array-slices.exp | 267 ++++++-
gdb/testsuite/gdb.fortran/array-slices.f90 | 364 ++++++++-
gdb/testsuite/gdb.fortran/vla-sizeof.exp | 4 +-
24 files changed, 2160 insertions(+), 330 deletions(-)
create mode 100644 gdb/f-array-walker.h
create mode 100644 gdb/testsuite/gdb.fortran/array-slices-bad.exp
create mode 100644 gdb/testsuite/gdb.fortran/array-slices-bad.f90
create mode 100644 gdb/testsuite/gdb.fortran/array-slices-sub-slices.exp
create mode 100644 gdb/testsuite/gdb.fortran/array-slices-sub-slices.f90

--
2.25.4