This is an archive of the discontinued LLVM Phabricator instance.

[flang] Fix purity testing for generic calls
ClosedPublic

Authored by klausler on May 21 2022, 10:15 PM.

Details

Summary

The purity or impurity of a call to a generic interface
depends on the attributes of the specific procedure or specific
binding. Change expression analysis of calls to generic interfaces
to replace the symbol in the parse tree with the specific procedure
or binding; this ensures that later checking for purity in
DO CONCURRENT and other contexts will be accurate.

Remove an "XFAIL" from a test that now passes again with this fix.

Diff Detail

Event Timeline

klausler created this revision.May 21 2022, 10:15 PM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a subscriber: jdoerfert. · View Herald Transcript
klausler requested review of this revision.May 21 2022, 10:15 PM
vdonaldson accepted this revision.May 23 2022, 10:33 AM

Thanks for this fix. The test "XFAIL" mention in the summary / commit message doesn't apply to this instance of the fix, if it is easy to correct that.

This revision is now accepted and ready to land.May 23 2022, 10:33 AM
This revision was automatically updated to reflect the committed changes.