[PATCH] D92501: [flang] Fix bogus message on interface procedure argument names

Peter Klausler via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 2 13:02:15 PST 2020


klausler requested changes to this revision.
klausler added a comment.
This revision now requires changes to proceed.

I don't think that moving a temporary data structure from declaration processing into a more permanent object like Scope to accomplish scoping is the right way to fix this problem, unfortunately.

The specification-part of an interface block exists only to define the dummy arguments and (if there is one) the function result, so declarations of other local variables are moot in an interface outside of specification inquiries like SIZE().  Since local variables are the only objects that could meaningfully appear in an EQUIVALENCE statement in the specification part of an interface -- dummies can't be EQUIVALENCEd and there's nothing to be learned from an EQUIVALENCE of a function result -- there's no good reason to check such EQUIVALENCE statements for anything.  I think that we should warn about their uselessness and otherwise ignore them.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D92501/new/

https://reviews.llvm.org/D92501



More information about the llvm-commits mailing list