This is an archive of the discontinued LLVM Phabricator instance.

[flang] Disallow erroneous procedure declarations
ClosedPublic

Authored by PeteSteinfeld on Mar 22 2021, 2:35 PM.

Details

Summary

When writing tests for a previous problem, I ran across situations where we
were not producing error messages for declarations of specific procedures of
generic interfaces where every other compiler I tested (except nvfotran) did.
I added a check to CheckExtantExternal() and renamed it since it now checks for
erroneous extant symbols generally.

I also removed a call to this function from processing for ENTRY statements,
since it seemed unnecessary and its presence caused bogus error messages.

I also added some tests for erroneous declarations where we were not producing
error messages.

Diff Detail

Event Timeline

PeteSteinfeld requested review of this revision.Mar 22 2021, 2:35 PM
PeteSteinfeld created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptMar 22 2021, 2:35 PM
PeteSteinfeld added a project: Restricted Project.Mar 22 2021, 2:35 PM
klausler accepted this revision.Mar 22 2021, 2:43 PM
This revision is now accepted and ready to land.Mar 22 2021, 2:43 PM
This revision was landed with ongoing or failed builds.Mar 22 2021, 2:56 PM
This revision was automatically updated to reflect the committed changes.