This is an archive of the discontinued LLVM Phabricator instance.

[flang] Handle pointer assignment with polymorphic entities
ClosedPublic

Authored by clementval on Nov 1 2022, 3:16 AM.

Details

Summary

This patch forces pointer and allocatable polymorphic entities to be
tracked as descriptor. It also enables the pointer assignment between
polymorphic entities. Pointer association between a non-polymorphic
pointer and a polyrmophic target might require some more work as
per 10.2.2.3 point 1.

Diff Detail

Event Timeline

clementval created this revision.Nov 1 2022, 3:16 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptNov 1 2022, 3:16 AM
Herald added a subscriber: mehdi_amini. · View Herald Transcript
clementval requested review of this revision.Nov 1 2022, 3:16 AM
clementval updated this revision to Diff 472249.Nov 1 2022, 3:29 AM

Add tests with arrays

clementval updated this revision to Diff 472296.Nov 1 2022, 7:25 AM

Add pointer to array element and pointer to array slice

clementval retitled this revision from [flang] Track pointer/allocatable polymorphic as descriptor to [flang] Hanlde pointer assignment with polymorphic entities.Nov 1 2022, 7:26 AM
clementval edited the summary of this revision. (Show Details)
clementval retitled this revision from [flang] Hanlde pointer assignment with polymorphic entities to [flang] Handle pointer assignment with polymorphic entities.Nov 1 2022, 7:29 AM
PeteSteinfeld accepted this revision.Nov 1 2022, 8:04 AM

All builds and tests correctly and looks good.

This revision is now accepted and ready to land.Nov 1 2022, 8:04 AM