This is an archive of the discontinued LLVM Phabricator instance.

[flang][lowering] Do not instantiate component symbols used in spec expr
ClosedPublic

Authored by jeanPerier on Apr 27 2023, 2:24 AM.

Details

Summary

Lowering analyse specification expressions in order to create order the
symbol instantiations in the IR (If symbol B is used in the
specification expression of A, symbol B must be instantiated first).

This analysis was mistakenly collecting component symbols used in
component references inside specification expressions, which led
lowering to instantiate component symbols as if they were local
objects.

This patch prevents collecting component symbols during this analysis.

Diff Detail

Event Timeline

jeanPerier created this revision.Apr 27 2023, 2:24 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 27 2023, 2:24 AM
jeanPerier requested review of this revision.Apr 27 2023, 2:24 AM
vzakhari accepted this revision.Apr 27 2023, 8:11 AM

Thank you!

This revision is now accepted and ready to land.Apr 27 2023, 8:11 AM
This revision was landed with ongoing or failed builds.Apr 27 2023, 9:38 AM
This revision was automatically updated to reflect the committed changes.