This is an archive of the discontinued LLVM Phabricator instance.

[flang] Fix repeated "DT" editing
ClosedPublic

Authored by klausler on Jan 21 2022, 9:25 AM.

Details

Summary

User-defined derived type editing in formatted I/O wasn't
working with repeat counts; e.g., "2DT(10)". The solution required
some code to be moved from GetNextDataEdit() to CueUpNextDataEdit() so
that a stack entry for a nonparenthesized repeated data edit
descriptor would work correctly -- all other data edit descriptors
are capable of dealing with repetition in their callees, so the bug
hadn't been exposed before.

Debugging this problem led to some improvements in error messages
for bad format strings, and those changes have been retained; also,
a dead member function was discovered and expunged.

Diff Detail

Event Timeline

klausler created this revision.Jan 21 2022, 9:25 AM
klausler requested review of this revision.Jan 21 2022, 9:25 AM
vdonaldson accepted this revision.Jan 21 2022, 9:33 AM
This revision is now accepted and ready to land.Jan 21 2022, 9:33 AM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptJan 21 2022, 5:23 PM