This is an archive of the discontinued LLVM Phabricator instance.

-frewrite-imports: Add support for wildcard rules in umbrella modules with
ClosedPublic

Authored by dblaikie on May 7 2019, 2:10 PM.

Diff Detail

Repository
rC Clang

Event Timeline

dblaikie created this revision.May 7 2019, 2:10 PM
Herald added a project: Restricted Project. · View Herald TranscriptMay 7 2019, 2:10 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
dblaikie updated this revision to Diff 198528.May 7 2019, 2:11 PM

Add another FIXME

Harbormaster completed remote builds in B31562: Diff 198528.
rsmith accepted this revision.May 7 2019, 2:24 PM
rsmith added inline comments.
lib/Basic/Module.cpp
324

Maybe findOrInferSubmodule; the current name suggests that this would always create a submodule if one doesn't exist (like ModuleMap::findOrCreateModule does).

lib/Lex/Pragma.cpp
1586–1587

Remove fixed FIXME please :)

test/Modules/preprocess-umbrella.cpp
2–3

FWIW, I think that probably happens when parsing the umbrella "foo" directive.

This revision is now accepted and ready to land.May 7 2019, 2:24 PM
This revision was automatically updated to reflect the committed changes.
dblaikie marked an inline comment as done.May 7 2019, 2:39 PM
dblaikie added inline comments.
test/Modules/preprocess-umbrella.cpp
2–3

Thanks for the pointer - yeah, I'd come across that too. Both the ModuleMap and the Module ( https://clang.llvm.org/doxygen/classclang_1_1Module.html#acb7c8570da610974e567675303baa77b ) depend on a non-null DirectoryEntry to record the modules umbrella-ness.

Any ideas on how I might go about removing that limitation?