]> granicus.if.org Git - clang/commit
Include non-explicit submodules in exported module list
authorDmitri Gribenko <gribozavr@gmail.com>
Mon, 4 Nov 2013 21:51:33 +0000 (21:51 +0000)
committerDmitri Gribenko <gribozavr@gmail.com>
Mon, 4 Nov 2013 21:51:33 +0000 (21:51 +0000)
commit86250895597e288c86ef08c2e824956ea9835fed
tree7b422665f46e6ed99c7e0d6d3a7d608f1527b7f8
parent741c5411f491a12cd965c9f5ebdff742eddbdc79
Include non-explicit submodules in exported module list

This change fixes Richard's testcase for r193815.  Now we include non-explicit
submodules into the list of exports.

The test failed previously because:
- recursive_visibility_a1.inner is not imported (only recursive_visibility_a1 is),
- thus the 'inner' submodule is not showing up in any of the import lists,
- and because of this getExportedModules() is not returning the
  correct module set -- it only considers modules that are imported.

The fix is to make Module::getExportedModules() include non-explicit submodules
into the list of exports.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194018 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Basic/Module.cpp
lib/Serialization/ASTReader.cpp
test/Modules/Inputs/module.map
test/Modules/Inputs/recursive_visibility_a1_inner.h [new file with mode: 0644]
test/Modules/Inputs/recursive_visibility_a2_more_inner.h [new file with mode: 0644]
test/Modules/Inputs/recursive_visibility_b.h [new file with mode: 0644]
test/Modules/Inputs/recursive_visibility_c.h [new file with mode: 0644]
test/Modules/recursive_visibility.mm [new file with mode: 0644]