[PATCHv5 0/4] Fortran Array Slicing and Striding Support

Andrew Burgess
2020-10-11T18:12:20Z

Ping!

Since v4:

- No documentation changes!

- No changes in patches #1 and #2.

- Patch #3 is now a small patch containing only the changes to the
Fortan array parsing code, and updates to the expression dumping
code to match. I'm hoping that splitting this small piece of work
out might get it reviewed, in which case I think I can justify
merging patches #1, #2, and #3.

- Patch #4 contains the bulk of the interesting work, this is the
patch that really needs review, especially the change in
gdbtypes.c.

All feedback welcome.

Thanks,
Andrew

---

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

gdb/ChangeLog | 77 ++
gdb/Makefile.in | 1 +
gdb/NEWS | 13 +
gdb/doc/ChangeLog | 7 +
gdb/doc/gdb.texinfo | 32 +
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 | 14 +
.../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, 2171 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