[PATCH] D94636: [flang] Fix some module file issues exposed by Whizard
Peter Klausler via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 13 14:16:06 PST 2021
klausler created this revision.
klausler added a reviewer: tskeith.
klausler added a project: Flang.
Herald added a subscriber: jdoerfert.
klausler requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Generic type-bound interfaces for user-defined operators need to be formatted
as "OPERATOR(.op.)", not just ".op."
PRIVATE generics need to be marked as such.
Declaration ordering: when a generic interface shadows a
derived type of the same name, it needs to be emitted to the
module file at the point of definition of the derived type;
otherwise, the derived type's definition may appear after its
first use.
The module symbol for a module read from a module file needs
to be marked as coming from a module file before semantic
processing is performed on the contents of the module so that
any special handling for declarations in module files can be
properly activated.
IMPORT statements were sometimes missing for use-associated
symbols in surrounding scopes; fine-tune NeedImport().
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D94636
Files:
flang/lib/Semantics/mod-file.cpp
flang/test/Semantics/modfile35.f90
flang/test/Semantics/modfile37.f90
flang/test/Semantics/modfile38.f90
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D94636.316516.patch
Type: text/x-patch
Size: 7399 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210113/4ef2dd50/attachment.bin>
More information about the llvm-commits
mailing list