llvm-project/clang/test/Modules/Inputs
Daniel Jasper 92669ee45c Enable layering check in unavailable modules.
If a header file belonging to a certain module is not found on the
filesystem, that header gets marked as unavailable. Now, the layering
warning (-fmodules-decluse) should still warn about headers of this
module being wrongfully included. Currently, headers belonging to those
modules are just treated as not belonging to modules at all which means
they can be included freely from everywhere.

To implement this (somewhat) cleanly, I have moved most of the layering
checks into the ModuleMap. This will also help with showing FixIts
later.

llvm-svn: 197805
2013-12-20 12:09:36 +00:00
..
AlsoDependsOnModule.framework/Headers Inferred framework modules automatically export anything they import 2011-12-05 17:40:25 +00:00
CmdLine.framework/Headers
Conflicts <rdar://problem/12368093> Extend module maps with a 'conflict' declaration, and warn when a newly-imported module conflicts with an already-imported module. 2013-03-20 21:10:35 +00:00
DependsOnModule.framework Allow a new syntax in a module requires-declaration: 2013-10-28 22:18:19 +00:00
HasSubModules.framework Change this comment to helpfully explain why it's there. 2013-02-13 03:34:21 +00:00
Modified <rdar://problem/13037793> Allow the names of modules to differ from the name of their subdirectory in the include path. 2013-03-21 01:08:50 +00:00
Module.framework Infer "link" lines for top-level frameworks. Essentially, a framework 2013-01-14 17:57:51 +00:00
ModuleDiags When building a module, forward diagnostics to the outer diagnostic consumer. 2013-05-03 22:58:43 +00:00
MutuallyRecursive1.framework/Headers Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
MutuallyRecursive2.framework/Headers Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
NoUmbrella.framework Infer "link" lines for top-level frameworks. Essentially, a framework 2013-01-14 17:57:51 +00:00
NotAModule.framework/Headers Introduce inferred framework modules into the module map file, 2012-11-06 19:39:40 +00:00
StdDef <rdar://problem/13479214> Make Clang's <stddef.h> robust against system headers defining size_t/ptrdiff_t/wchar_t. 2013-03-22 00:10:49 +00:00
System/usr/include Note when a decl is used in AST files. 2013-09-05 00:02:25 +00:00
declare-use Enable layering check in unavailable modules. 2013-12-20 12:09:36 +00:00
malformed Fix module name collision in tests. 2013-11-23 05:21:32 +00:00
modular_maps Revert "Modules: Make missing headers in a module.map a warning not an error." 2013-12-16 14:57:22 +00:00
normal-module-map Add missing header from 165821 2012-10-12 21:17:34 +00:00
odr Basic ODR checking for C++ modules: 2013-10-18 06:05:18 +00:00
oldname <rdar://problem/13037793> Allow the names of modules to differ from the name of their subdirectory in the include path. 2013-03-21 01:08:50 +00:00
private Test files for private header patch. 2013-06-20 21:15:51 +00:00
private0 Test files for private header patch. 2013-06-20 21:15:51 +00:00
private1 Use the same SourceManager for ModuleMaps and compilations. 2013-10-24 07:51:24 +00:00
private2 Use the same SourceManager for ModuleMaps and compilations. 2013-10-24 07:51:24 +00:00
separate_map_tree Allow a header to be part of multiple modules. 2013-10-22 08:09:47 +00:00
string_names Allow string literals as module names. 2013-12-06 09:25:54 +00:00
subdir Test module lookup within a subdirectory of a normal include directory. 2012-01-29 16:43:46 +00:00
submodules Add missing file from r197485. 2013-12-17 10:47:49 +00:00
unnecessary-module-map-parsing Modules: Don't warn upon missing headers while reading the module map. 2013-12-17 10:31:37 +00:00
wildcard-submodule-exports Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
MethodPoolA.h Order the methods in the global method pool based on when they become visible, not when they become deserialized <rdar://problem/13203033>. 2013-02-12 23:36:21 +00:00
MethodPoolASub.h Order the methods in the global method pool based on when they become visible, not when they become deserialized <rdar://problem/13203033>. 2013-02-12 23:36:21 +00:00
MethodPoolASub2.h Add missing header from r174648 2013-02-07 19:15:44 +00:00
MethodPoolB.h Whenever Sema attempts to look in the global method pool, try to load 2012-01-25 00:59:09 +00:00
MethodPoolBSub.h When building a module, keep *all* declared methods in the global method pool. 2013-06-21 00:20:25 +00:00
MethodPoolBSub2.h Add test header missing from r184504. 2013-06-21 00:22:44 +00:00
autolink-sub.h Implement parsing, AST, (de-)serialization, and placeholder global 2013-01-14 17:21:00 +00:00
autolink-sub2.h Implement parsing, AST, (de-)serialization, and placeholder global 2013-01-14 17:21:00 +00:00
autolink.h Implement parsing, AST, (de-)serialization, and placeholder global 2013-01-14 17:21:00 +00:00
builtin.h <rdar://problem/13560075> Teach name lookup for builtin names to find hidden declarations. 2013-04-03 23:06:26 +00:00
builtin_sub.h <rdar://problem/13560075> Teach name lookup for builtin names to find hidden declarations. 2013-04-03 23:06:26 +00:00
category_bottom.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
category_left.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
category_left_sub.h Treat hidden Objective-C protocol definitions as if they were 2013-01-17 00:38:46 +00:00
category_other.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
category_right.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
category_right_sub.h Treat hidden Objective-C protocol definitions as if they were 2013-01-17 00:38:46 +00:00
category_top.h Treat hidden Objective-C protocol definitions as if they were 2013-01-17 00:38:46 +00:00
config.h <rdar://problem/10796651> Introduce configuration macros into module maps. 2013-03-20 00:22:05 +00:00
cxx-decls-imported.h Map from local decl IDs to global decl IDs when lazily deserializing friend decl chains. 2013-08-30 00:23:29 +00:00
cxx-decls-unimported.h If an unimported submodule of an imported module contains a declaration of a 2013-07-14 02:01:48 +00:00
cxx-inline-namespace.h Remove an assert which triggers when a decl context in a module hits the 'has 2013-02-12 02:32:35 +00:00
cxx-linkage-cache.h Fix a bug reduced from a crash when trying to use modules with libc++. We check 2013-02-12 05:48:23 +00:00
cxx-many-overloads.h Fix stack overflow and improve performance when a module contains many 2013-02-08 00:37:45 +00:00
cxx-templates-a.h Test that we can merge together explicit and partial specializations from 2013-10-15 23:19:58 +00:00
cxx-templates-b-impl.h When we perform dependent name lookup during template instantiation, it's not 2013-07-25 23:08:39 +00:00
cxx-templates-b.h Test that we can merge together explicit and partial specializations from 2013-10-15 23:19:58 +00:00
cxx-templates-c.h Test that we can merge together explicit and partial specializations from 2013-10-15 23:19:58 +00:00
cxx-templates-common.h C++ modules: merging for enumerations and enumerators with multiple definitions 2013-10-15 22:02:41 +00:00
decl.h When name lookup comes across a declaration that is in a module that 2011-12-14 16:03:29 +00:00
decl2.h Fix chaining of ObjCInterfaceDecl redeclarations 2011-12-16 03:12:41 +00:00
def-include.h When inferring a submodule ID during module creation, look up the 2012-01-06 17:19:32 +00:00
def.h C++ modules: fix a bug where loading a declaration with some name would prevent 2013-09-09 07:34:56 +00:00
diag_pragma.h [modules] Make sure enabled diagnostic pragmas inside the module don't affect the translation unit that 2013-03-27 17:17:23 +00:00
diamond.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
diamond_bottom.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
diamond_left.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
diamond_right.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
diamond_top.h
dummy.h Map from local decl IDs to global decl IDs when lazily deserializing friend decl chains. 2013-08-30 00:23:29 +00:00
ignored_macros.h Detect when we end up trying to load conflicting module files. 2013-02-06 22:40:31 +00:00
import-decl.h Fix ASTReader handling of ImportDecls, from Meador Inge! 2012-05-16 16:31:58 +00:00
incomplete_mod.h Add -Wincomplete-module, which detects when a header is included from a module but isn't itself part of a module. 2013-05-20 13:49:41 +00:00
incomplete_mod_missing.h Add -Wincomplete-module, which detects when a header is included from a module but isn't itself part of a module. 2013-05-20 13:49:41 +00:00
initializer_list C++ modules: don't lose track of a 'namespace std' that is imported from a module. 2013-10-18 06:54:39 +00:00
irgen.h Switch some more of the modules tests over to "-emit-module-from-map", 2011-11-16 00:21:54 +00:00
linkage-merge-bar.h Add a module testcase with a using declaration. 2013-04-05 00:52:14 +00:00
linkage-merge-foo.h Add a module testcase with a using declaration. 2013-04-05 00:52:14 +00:00
linkage-merge-sub.h When name lookup for a redeclaration finds declarations that are known 2013-01-09 00:47:56 +00:00
load_failure.h
lookup_left.h
lookup_left.hpp
lookup_right.h
lookup_right.hpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
macros.h Introduce builtin macros to determine whether we're building a 2012-09-25 15:44:52 +00:00
macros_left.h [preprocessor] Allow comparing two macro definitions syntactically instead of only lexically. 2013-04-03 17:39:30 +00:00
macros_other.h Rework the (de-)serialization of macros, as stored in 2012-10-09 23:05:51 +00:00
macros_right.h [preprocessor] Allow comparing two macro definitions syntactically instead of only lexically. 2013-04-03 17:39:30 +00:00
macros_right_undef.h Track which particular submodule #undef's a macro, so that the actual 2012-10-12 00:16:50 +00:00
macros_top.h [modules] If a submodule has re-definitions of the same macro, only the last definition will be used as the "exported" one. 2013-04-03 05:11:33 +00:00
module.map Include non-explicit submodules in exported module list 2013-11-04 21:51:33 +00:00
module_private_left.h When performing name lookup for a redeclaration, ignore module 2011-12-20 18:11:52 +00:00
module_private_right.h When performing name lookup for a redeclaration, ignore module 2011-12-20 18:11:52 +00:00
namespaces-left.h Fix handling of module imports adding names to a DeclContext after qualified 2013-02-07 03:37:08 +00:00
namespaces-right.h Fix handling of module imports adding names to a DeclContext after qualified 2013-02-07 03:37:08 +00:00
namespaces-top.h C++ modules: fix a bug where loading a declaration with some name would prevent 2013-09-09 07:34:56 +00:00
pch-used.h Note when a decl is used in AST files. 2013-09-05 00:02:25 +00:00
point.h
recursive_visibility_a1_inner.h Include non-explicit submodules in exported module list 2013-11-04 21:51:33 +00:00
recursive_visibility_a2_more_inner.h Include non-explicit submodules in exported module list 2013-11-04 21:51:33 +00:00
recursive_visibility_b.h Include non-explicit submodules in exported module list 2013-11-04 21:51:33 +00:00
recursive_visibility_c.h Include non-explicit submodules in exported module list 2013-11-04 21:51:33 +00:00
redecl-merge-bottom-prefix.h [Modules] Cope better with top-level declarations loaded after being declared in the current translation unit <rdar://problem/13189985>. 2013-02-11 18:16:18 +00:00
redecl-merge-bottom.h [Modules] Cope better with top-level declarations loaded after being declared in the current translation unit <rdar://problem/13189985>. 2013-02-11 18:16:18 +00:00
redecl-merge-left-left.h Use @import rather than @__experimental_modules_import, since the 2012-12-11 22:11:52 +00:00
redecl-merge-left.h Ensure that the identifier chains have the most recent declaration after module deserialization. 2013-02-18 15:53:43 +00:00
redecl-merge-right.h Ensure that the identifier chains have the most recent declaration after module deserialization. 2013-02-18 15:53:43 +00:00
redecl-merge-top-explicit.h When we're performing name lookup for a tag, we still allow ourselves 2012-01-05 01:11:47 +00:00
redecl-merge-top.h Ensure that the identifier chains have the most recent declaration after module deserialization. 2013-02-18 15:53:43 +00:00
redecl_namespaces_left.h There's some code in the PCH reader that looks like it's needlessly complex, but 2012-04-12 07:56:21 +00:00
redecl_namespaces_right.h There's some code in the PCH reader that looks like it's needlessly complex, but 2012-04-12 07:56:21 +00:00
redeclarations_left.h Switch the remaining modules tests over to -emit-module-from-map. 2011-11-16 15:22:03 +00:00
redeclarations_right.h Switch the remaining modules tests over to -emit-module-from-map. 2011-11-16 15:22:03 +00:00
templates-left.h When merging class definitions across modules in C++, merge together fields. 2013-10-07 08:02:11 +00:00
templates-right.h When merging class definitions across modules in C++, merge together fields. 2013-10-07 08:02:11 +00:00
templates-top.h When merging class definitions across modules in C++, merge together fields. 2013-10-07 08:02:11 +00:00
using-decl-a.h Make UsingShadowDecls redeclarable. This fixes some visibility problems with 2013-10-23 02:17:46 +00:00
using-decl-b.h Make UsingShadowDecls redeclarable. This fixes some visibility problems with 2013-10-23 02:17:46 +00:00
warning.h [Modules] If a module map resides in a system header directory, treat it as a system module. 2013-06-21 16:28:10 +00:00
weird_objc.h Merge "special" types from different modules in the AST reader. 2013-02-01 23:45:03 +00:00