This is the mail archive of the
mailing list for the GDB project.
Re: [PATCH 1/2] fort_dyn_array: add basic fortran dyn array support
- From: Yao Qi <qiyaoltc at gmail dot com>
- To: Keven Boell <keven dot boell at linux dot intel dot com>
- Cc: gdb-patches at sourceware dot org, Joel Brobecker <brobecker at adacore dot com>
- Date: Wed, 20 Jan 2016 10:18:50 +0000
- Subject: Re: [PATCH 1/2] fort_dyn_array: add basic fortran dyn array support
- Authentication-results: sourceware.org; auth=none
- References: <1435754532-17922-1-git-send-email-keven dot boell at intel dot com> <1435754532-17922-2-git-send-email-keven dot boell at intel dot com> <20150721180502 dot GN7406 at adacore dot com> <55C213C7 dot 7070202 at linux dot intel dot com> <20150805202301 dot GB14992 at adacore dot com> <51130 dot 172 dot 28 dot 205 dot 135 dot 1438861308 dot squirrel at linux dot intel dot com> <20150820125159 dot GD4571 at adacore dot com> <5617A6FB dot 4050407 at linux dot intel dot com>
Keven Boell <firstname.lastname@example.org> writes:
> Fortran provide types whose values may be dynamically allocated
> or associated with a variable under explicit program control.
> The purpose of this commit is
> * to read allocated/associated DWARF tags and store them in
> the dynamic property list of main_type.
> * enable GDB to print the value of a dynamic array in Fortran
> in case the type is allocated or associated (pointer to
> dynamic array).
> (gdb) p vla_not_allocated
> $1 = <not allocated>
> (gdb) p vla_allocated
> $1 = (1, 2, 3)
> (gdb) p vla_ptr_not_associated
> $1 = <not associated>
> (gdb) p vla_ptr_associated
> $1 = (1, 2, 3)
> Add basic test coverage for most dynamic array use-cases
> in Fortran.
> The commit contains the following tests:
> * Ensure that values of Fortran dynamic arrays
> can be evaluated correctly in various ways and states.
> * Ensure that Fortran primitives can be evaluated
> correctly when used as a dynamic array.
> * Dynamic arrays passed to subroutines and handled
> in different ways inside the routine.
> * Ensure that the ptype of dynamic arrays in
> Fortran can be printed in GDB correctly.
> * Ensure that dynamic arrays in different states
> (allocated/associated) can be evaluated.
> * Dynamic arrays passed to functions and returned from
> * History values of dynamic arrays can be accessed and
> printed again with the correct values.
> * Dynamic array evaluations using MI protocol.
> * Sizeof output of dynamic arrays in various states.
> The patch was tested using the test suite on Ubuntu 12.04 64bit.
The test cases added by this commit fail on some other OS and targets,
see this thread, https://sourceware.org/ml/gdb-testers/2015-q4/msg02136.html
can you take a look?