diff options
author | peter klausler <pklausler@nvidia.com> | 2021-06-25 10:40:08 -0700 |
---|---|---|
committer | peter klausler <pklausler@nvidia.com> | 2021-06-28 11:36:19 -0700 |
commit | 43fadefb0e77c56de7637c391cf98cf709b27095 (patch) | |
tree | 7e538ca215f623cc1d9fd3d8a30ca8e2337f4b8b /llvm/lib/Bitcode | |
parent | ad6bee87e6b78881223ebd71e52e5a336ef2a65c (diff) | |
download | llvm-43fadefb0e77c56de7637c391cf98cf709b27095.zip llvm-43fadefb0e77c56de7637c391cf98cf709b27095.tar.gz llvm-43fadefb0e77c56de7637c391cf98cf709b27095.tar.bz2 |
[flang] Implement user-defined derived type runtime I/O
With derived type description tables now available to the
runtime library, it is possible to implement the concept
of "child" I/O statements in the runtime and use them to
convert instances of derived type I/O data transfers into
calls to user-defined subroutines when they have been specified
for a type. (See Fortran 2018, subclauses 12.6.4.8 & 13.7.6).
- Support formatted, list-directed, and NAMELIST
transfers to internal parent units; support these, and unformatted
transfers, for external parent units.
- Support nested child defined derived type I/O.
- Parse DT'foo'(v-list) FORMAT data edit descriptors and passes
their strings &/or v-list values as arguments to the defined
formatted I/O routines.
- Fix problems with this feature encountered in semantics and
FORMAT valiation during development and end-to-end testing.
- Convert typeInfo::SpecialBinding from a struct to a class
after adding a member function.
Differential Revision: https://reviews.llvm.org/D104930
Diffstat (limited to 'llvm/lib/Bitcode')
0 files changed, 0 insertions, 0 deletions