[flang][runtime] Corrections to formatted child I/O
authorPeter Klausler <pklausler@nvidia.com>
Wed, 8 Mar 2023 19:07:39 +0000 (11:07 -0800)
committerPeter Klausler <pklausler@nvidia.com>
Fri, 10 Mar 2023 18:09:44 +0000 (10:09 -0800)
commit79f6b812356880f64975998fda72d06d46735ad6
treed691c10dde7fa098b641ef44d5c90e5e8df33329
parentfd4c958dc5b3e052e5e717c3bf0f914a70466d84
[flang][runtime] Corrections to formatted child I/O

A handful of I/O statements (OPEN, CLOSE, positioning) are not allowed
on units during child I/O; catch violations and report errors.
Also finesse error handling during FORMAT runtime parsing of DT
derived type edit descriptors, and ensure that formatted child
I/O is nonadvancing.

Differential Revision: https://reviews.llvm.org/D145751
flang/include/flang/Runtime/iostat.h
flang/runtime/descriptor-io.cpp
flang/runtime/format-implementation.h
flang/runtime/format.h
flang/runtime/io-api.cpp
flang/runtime/io-error.cpp
flang/runtime/iostat.cpp
flang/runtime/unit.h
flang/unittests/Runtime/Format.cpp