This is an archive of the discontinued LLVM Phabricator instance.

[flang] Refine procedure compatibility checking
ClosedPublic

Authored by klausler on Mar 1 2023, 11:25 AM.

Details

Summary

The test for compatible function results needs to be nearly strict
equality of their types, not the usual actual/dummy type compatibility
test used in other situations. The exceptional case is that assumed
length CHARACTER function results are compatible with explicit length
results of the same kind. In particular, a function returning a
polymorphic pointer is not compatible with a function returning a
monomorphic pointer even of the same declared type.

Diff Detail

Event Timeline

klausler created this revision.Mar 1 2023, 11:25 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 1 2023, 11:25 AM
klausler requested review of this revision.Mar 1 2023, 11:25 AM
This revision is now accepted and ready to land.Mar 1 2023, 11:38 AM
This revision was automatically updated to reflect the committed changes.