llvm-project/clang/test/Modules
Alexandre Rames 71e108cd86 Allow searching for prebuilt implicit modules.
The behavior is controlled by the `-fprebuilt-implicit-modules` option, and
allows searching for implicit modules in the prebuilt module cache paths.

The current command-line options for prebuilt modules do not allow to easily
maintain and use multiple versions of modules. Both the producer and users of
prebuilt modules are required to know the relationships between compilation
options and module file paths. Using a particular version of a prebuilt module
requires passing a particular option on the command line (e.g.
`-fmodule-file=[<name>=]<file>` or `-fprebuilt-module-path=<directory>`).

However the compiler already knows how to distinguish and automatically locate
implicit modules. Hence this proposal to introduce the
`-fprebuilt-implicit-modules` option. When set, it enables searching for
implicit modules in the prebuilt module paths (specified via
`-fprebuilt-module-path`). To not modify existing behavior, this search takes
place after the standard search for prebuilt modules. If not

Here is a workflow illustrating how both the producer and consumer of prebuilt
modules would need to know what versions of prebuilt modules are available and
where they are located.

  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules_v1 <config 1 options>
  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules_v2 <config 2 options>
  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules_v3 <config 3 options>

  clang -cc1 -x c use.c -fmodules fmodule-map-file=modulemap -fprebuilt-module-path=prebuilt_modules_v1 <config 1 options>
  clang -cc1 -x c use.c -fmodules fmodule-map-file=modulemap <non-prebuilt config options>

With prebuilt implicit modules, the producer can generate prebuilt modules as
usual, all in the same output directory. The same mechanisms as for implicit
modules take care of incorporating hashes in the path to distinguish between
module versions.

Note that we do not specify the output module filename, so `-o` implicit modules are generated in the cache path `prebuilt_modules`.

  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules <config 1 options>
  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules <config 2 options>
  clang -cc1 -x c modulemap -fmodules -emit-module -fmodule-name=foo -fmodules-cache-path=prebuilt_modules <config 3 options>

The user can now simply enable prebuilt implicit modules and point to the
prebuilt modules cache. No need to "parse" command-line options to decide
what prebuilt modules (paths) to use.

  clang -cc1 -x c use.c -fmodules fmodule-map-file=modulemap -fprebuilt-module-path=prebuilt_modules -fprebuilt-implicit-modules <config 1 options>
  clang -cc1 -x c use.c -fmodules fmodule-map-file=modulemap -fprebuilt-module-path=prebuilt_modules -fprebuilt-implicit-modules <non-prebuilt config options>

This is for example particularly useful in a use-case where compilation is
expensive, and the configurations expected to be used are predictable, but not
controlled by the producer of prebuilt modules. Modules for the set of
predictable configurations can be prebuilt, and using them does not require
"parsing" the configuration (command-line options).

Reviewed By: Bigcheese

Differential Revision: https://reviews.llvm.org/D68997
2020-11-05 13:10:53 -08:00
..
Inputs Allow searching for prebuilt implicit modules. 2020-11-05 13:10:53 -08:00
ASTSignature.c [NFC] Make AST_BLOCK_HASH test more robust with downstream changes 2020-06-19 09:41:15 +01:00
DebugInfo-fmodule-name.c Relax assertion to account for private framework modules, too. 2019-02-15 20:24:26 +00:00
DebugInfoNamespace.cpp
DebugInfoSubmoduleImport.c
DebugInfoSubmodules.c
DebugInfoTransitiveImport.m [DebugInfo][CallSites] Remove decl subprograms from 'retainedTypes:' 2020-06-01 09:10:05 +02:00
ExtDebugInfo.cpp [DebugInfo] Use SplitTemplateClosers (foo<bar<baz> >) in DWARF too 2020-05-28 12:30:38 +02:00
ExtDebugInfo.m Don't set the isOptimized flag in module skeleton DICompileUnits. 2020-03-20 14:18:15 -07:00
ModuleDebugInfo.cpp [DebugInfo][CallSites] Remove decl subprograms from 'retainedTypes:' 2020-06-01 09:10:05 +02:00
ModuleDebugInfo.m [DebugInfo][CallSites] Remove decl subprograms from 'retainedTypes:' 2020-06-01 09:10:05 +02:00
ModuleDebugInfoDwoId.cpp Reland "Correctly emit dwoIDs after ASTFileSignature refactoring (D81347)" 2020-08-24 14:52:53 +02:00
ModuleModuleDebugInfo.cpp
Rmodule-build.m Modules: Add -Rmodule-import 2019-03-06 02:50:46 +00:00
Rmodule-import.m Fix slashes in path references in -Rmodule-import test from r355477 2019-03-06 05:42:56 +00:00
Werror-Wsystem-headers.m
Werror.m
add-remove-private.m
adl.cpp
anon-linkage.cpp
anon-namespace.cpp
anon-redecl.cpp
asm-goto.c Fix regex in test. 2020-09-24 15:21:28 -07:00
at-import-in-framework-header.m Re-land Remove REQUIRES:shell from tests that pass for me on Windows 2019-09-10 20:15:45 +00:00
attr-unavailable.m
auto-import-unavailable.cpp
auto-module-import.m Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
autolink.m [ELF] Implement Dependent Libraries Feature 2019-05-17 03:44:15 +00:00
autolinkTBD.m
autoload-subdirectory.cpp Reapply r336660: [Modules] Autoload subdirectory modulemaps with specific LangOpts 2018-07-18 23:21:19 +00:00
available-is-better.cpp
bad-private-include.m
build-fail-notes.m
builtin-import.mm [test] Use %clang_cc1 instead of %clang -cc1 2019-09-27 05:37:06 +00:00
builtins.m Re-land Remove REQUIRES:shell from tests that pass for me on Windows 2019-09-10 20:15:45 +00:00
check-for-sanitizer-feature.cpp [Driver] Add float-divide-by-zero back to supported sanitizers after D63793/rC365272 2019-07-10 00:30:02 +00:00
class-extension-protocol.m
codegen-extern-template.cpp Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
codegen-extern-template.h -fmodules-codegen should not emit extern templates 2020-01-14 23:39:50 +01:00
codegen-flags.test
codegen-nodep.test
codegen-opt.test
codegen.test Spurious commit just to help Richard, because git is weird. 2018-06-29 21:58:24 +00:00
compiler_builtins.m
compiler_builtins_aarch64.m
compiler_builtins_arm.m
compiler_builtins_x86.c [X86] Make `x86intrin.h`, `immintrin.h` includable with `-fno-gnu-inline-asm`. 2019-05-13 22:40:11 +00:00
config-mismatch.cpp
config_macros.m
conflicts.m
const-var-init-update.cpp
context-hash.c [clang] Include missing LangOpts in `getModuleHash`. 2020-07-07 17:13:23 -06:00
crash-typo-correction-visibility.cpp
crash-vfs-headermaps.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-include-pch.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-ivfsoverlay.m Fix `sed -e s@FOO@%/S@` and similar when there's @'s in the working directory 2019-12-03 15:44:01 -08:00
crash-vfs-path-emptydir-entries.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-path-symlink-component.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-path-symlink-topheader.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-path-traversal.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-relative-incdir.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-relative-overlay.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-run-reproducer.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crash-vfs-umbrella-frameworks.m Prefer 'env not' over 'not env' in tests. 2019-10-14 01:41:56 +00:00
crashes.m
cstd.m
cxx-decls.cpp
cxx-dtor.cpp PR33924: merge local declarations that have linkage of some kind within 2018-07-04 02:25:38 +00:00
cxx-inline-namespace.cpp
cxx-irgen.cpp
cxx-linkage-cache.cpp
cxx-lookup.cpp
cxx-many-overloads.cpp
cxx-templates.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
cxx17-exception-spec.cpp
cxx17-inline-variables.cpp
cxx17.cpp Don't diagnose a redeclaration of a deduction guide if the prior 2020-06-12 10:29:01 -07:00
cxx20.cpp Don't diagnose a redeclaration of a deduction guide if the prior 2020-06-12 10:29:01 -07:00
cycles.c
darwin_specific_modulemap_hacks.m
debug-info-moduleimport-in-module.m
debug-info-moduleimport.m Allow remapping Clang module include paths 2020-03-27 14:23:30 -07:00
declare-use-compatible.cpp
declare-use.S
declare-use1.cpp
declare-use2.cpp
declare-use3.cpp
declare-use4.cpp
declare-use5.cpp
decldef.m Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
decldef.mm Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
deferred-lookup.cpp
dependency-dump-dependent-module.m Re-land Remove REQUIRES:shell from tests that pass for me on Windows 2019-09-10 20:15:45 +00:00
dependency-dump.m Re-land Remove REQUIRES:shell from tests that pass for me on Windows 2019-09-10 20:15:45 +00:00
dependency-gen-inferred-map.m
dependency-gen-pch.m
dependency-gen.m
dependency-gen.modulemap
diag-flags.cpp
diag-pragma.c
diag-pragma.cpp
diagnose-missing-import.m [Sema] Special case -Werror-implicit-function-declaration and reject other -Werror- 2020-11-05 10:25:30 -08:00
diagnostic-options-out-of-date.m
diagnostics.modulemap [Modules] Improve error message when cannot find parent module for submodule definition. 2020-08-25 16:31:27 -07:00
diamond-pch.c
diamond.c
direct-module-import.m
double-quotes.m Fix `sed -e s@FOO@%/S@` and similar when there's @'s in the working directory 2019-12-03 15:44:01 -08:00
driver.c
elaborated-type-specifier-from-hidden-module.m
embed-files-compressed.cpp
embed-files.cpp
empty.modulemap Fix clang/test/Modules/empty.modulemap by increasing limit. 2020-06-15 12:27:25 +01:00
enum-codegen.cpp Fix r361428 for Windows buildbots/mangling 2019-05-22 21:58:17 +00:00
epic-fail.m
exception-spec.cpp Make AST reading work better with LLVM_APPEND_VC_REV=NO 2020-01-27 22:08:37 -05:00
exclude-header.c
explicit-build-extra-files.cpp
explicit-build-flags.cpp
explicit-build-missing-files.cpp
explicit-build-overlap.cpp
explicit-build-prefer-self.cpp
explicit-build-relpath.cpp
explicit-build.cpp
exponential-paths.cpp
export_as_test.c
extensions.c
extern_c.cpp
extern_c_bad.cpp
extern_cxx.cpp
fatal-module-loader-error.m
filename.cpp
find-privateheaders.m
fmodules-validate-once-per-build-session.c Allow test to pass after 2030. 2019-05-08 13:42:44 +00:00
framework-name.m [C++20] Implement context-sensitive header-name lexing and pp-import parsing in the preprocessor. 2019-04-11 21:18:23 +00:00
framework-public-includes-private.m Fix `sed -e s@FOO@%/S@` and similar when there's @'s in the working directory 2019-12-03 15:44:01 -08:00
friend-definition-2.cpp [NFC] Explicitly add -std=c++14 option to tests that rely on the C++14 default 2019-02-05 12:05:53 +00:00
friend-definition.cpp Diagnose friend function template redefinitions. 2018-12-06 09:35:04 +00:00
fsystem-module.m [clang][Modules] Add -fsystem-module flag 2020-03-03 14:14:24 -08:00
getSourceDescriptor-crash.cpp
global-init.cpp
global_index.m
gnumode-non-benign.cpp
header-attribs.cpp
header-import.m
header-in-multiple-maps.cpp
hidden-definition.cpp
hidden-names.cpp
ignored_macros.m
implementation-of-module.m Fix the behavior of clang's -w flag. 2019-01-29 19:33:48 +00:00
implicit-build-config-out-of-date.m
implicit-built-Werror-using-W.cpp
implicit-invalidate-chain.c Revert "[modules] Do not cache invalid state for modules that we attempted to load." 2020-03-10 10:59:26 -07:00
implicit-invalidate-common.c Re-land Remove REQUIRES:shell from tests that pass for me on Windows 2019-09-10 20:15:45 +00:00
implicit-map-dot-private.m
implicit-private-canonical.m
implicit-private-with-different-name.m
implicit-private-with-submodule.m
implicit-private-without-public.m [modules] Allow frameworks to have only a private module without a public one. 2020-02-28 15:40:24 -08:00
import-decl.cpp
import-once.m [HeaderSearch] Fix processing #import-ed headers multiple times with modules enabled. 2020-08-20 17:41:28 -07:00
import-self.m
import-syntax.c
import-textual-noguard.mm
import-textual.mm
include-own-headers.m
include-relative.c
include_next.c
incomplete-framework-module.m
incomplete-module.m
incomplete-umbrella.m [clang][module] Improve incomplete-umbrella warning 2020-09-18 14:56:47 -07:00
inferred-attributes.mm
inferred-framework-case.m
inferred-frameworks.m
inferred-submodules.m
inherit-attribute.cpp Re-land 7a527f1777 with fixes. 2020-08-21 14:40:09 -04:00
initializer_list.cpp
initializers.cpp Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
inner-struct-redefines-invisible.m
interface-diagnose-missing-import.m Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
interface-visibility.m
internal-constants.cpp
invalid-pch-module-id.m
invalidate-identifiers.c
irgen.c
lambda-context.cpp
libc-libcxx.cpp
libstdcxx-ambiguous-internal.cpp
linkage-merge.cpp
linkage-merge.m
load-after-failure.m
load_failure.c
local-visibility.cpp
localsubmodulevis.m
lookup-assert-protocol.m
lookup-assert.m
lookup.cpp
lookup.m
lsv-debuginfo.cpp Remove +x permission on some files 2019-11-16 14:47:20 +01:00
macro-ambiguity.cpp
macro-hiding.cpp
macro-masking.cpp
macro-redefinition.cpp
macro-reexport.cpp
macro-undef-through-pch.m
macros.c
macros2.c
malformed-overload.m
malformed.cpp
merge-anon-in-extern_c.cpp
merge-anon-in-template.cpp
merge-class-definition-visibility.cpp
merge-decl-context.cpp
merge-decl-order.cpp
merge-deduced-return.cpp [modules] Defer merging deduced return types. 2018-08-03 01:00:01 +00:00
merge-dependent-friends.cpp
merge-enumerators.cpp
merge-fn-prototype-tags.c
merge-friends.cpp
merge-function-defs.cpp
merge-implicit-special-members.cpp
merge-lambdas.cpp [NFC] Explicitly add -std=c++14 option to tests that rely on the C++14 default 2019-02-05 12:05:53 +00:00
merge-lifetime-extended-temporary.cpp Make AST reading work better with LLVM_APPEND_VC_REV=NO 2020-01-27 22:08:37 -05:00
merge-name-for-linkage.cpp
merge-nested-templates.cpp
merge-static-locals.cpp PR33924: merge local declarations that have linkage of some kind within 2018-07-04 02:25:38 +00:00
merge-target-features.cpp
merge-template-friend.cpp
merge-template-members.cpp
merge-template-pattern-visibility-2.cpp Fix tracking of merged definitions when the merge target is also merged 2018-09-12 02:13:46 +00:00
merge-template-pattern-visibility-3.cpp Track definition merging on the canonical declaration even when local 2018-09-12 23:37:00 +00:00
merge-template-pattern-visibility.cpp
merge-template-specializations.cpp
merge-typedefs.cpp
merge-using-decls.cpp
merge-var-template-def.cpp
merge-vtable-codegen.cpp
method_pool.m
method_pool_write.m
minimal-identifier-tables.cpp
mismatch-diagnostics.cpp Fix test from r346439 to also work on Windows due to path separator differences. 2018-11-09 02:44:07 +00:00
misplaced-1.cpp
misplaced-2.cpp
misplaced-3.cpp
misplaced-4.cpp
misplaced-5.c
missing-flag.cpp
missing-header-local-visibility.cpp When making modules transitively visible, don't take into account 2020-04-17 22:49:58 -07:00
missing-header.m
missing-submodule.m
modify-module.m
modular_maps.cpp
module-debuginfo-prefix.m Reapply "Avoid emitting redundant or unusable directories in DIFile metadata entries."" 2018-12-06 18:44:50 +00:00
module-feature.m
module-file-modified.c
module-impl-with-link.c
module-imported-by-pch-path.m
module-imported-by-pch-with-modulemap.m [PCH+Modules] Load -fmodule-map-file content before including PCHs 2018-07-19 12:32:06 +00:00
module-map-path-hash.cpp
module-name-private.m
module-private.cpp [clang] Pass the NamedDecl* instead of the DeclarationName into many diagnostics. 2020-07-28 10:30:35 +01:00
module_file_info.m [X86] Default to -mtune=generic unless -march is passed to the driver. Add TuneCPU to the AST serialization 2020-08-26 14:52:03 -07:00
module_map_cwd.c
modulemap-locations.m
modules-cache-path-canonicalization.m
modules-with-same-name.m
modules.idx
ms-enums.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
multiple-include.cpp
namespaces.cpp clang: Fix minor grammar-o in diag added in c354b2e3b 2020-08-13 10:06:40 -04:00
nested-template-default-arg-redecl.cpp Modules: Adopt template parameters for variable templates to set their decl context correctly 2019-04-19 23:04:05 +00:00
new-delete.cpp [modules] Do not serialize / deserialize pending new/delete mismatch 2018-06-28 01:57:04 +00:00
no-implicit-builds.cpp
no-implicit-maps.cpp
no-linkage.cpp
no-module-map.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
no-stale-modtime.m
no-undeclared-includes-builtins.cpp [clang] Always allow including builtin headers in [no_undeclared_headers] modules. 2020-06-04 08:33:39 +02:00
non-ambiguous-enum.m
normal-module-map.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
objc-at-keyword.m
objc-categories.m
objc-category-2.m
objc-category-3.m
objc-category.m
objc-designated-init-mod.m
objc-hidden.m
objc-initializer.m
objc-method-redecl.m Make AST reading work better with LLVM_APPEND_VC_REV=NO 2020-01-27 22:08:37 -05:00
objc-type-param.m Fix a reentrance bug with deserializing ObjC type parameters. 2020-02-12 18:44:19 -05:00
objc_redef.m
odr.cpp
odr_hash-Friend.cpp Remove unnecessary options from test RUN lines. 2018-09-05 22:14:46 +00:00
odr_hash-Unresolved.cpp
odr_hash-blocks.cpp [ODRHash] Extend hash to support all Type's. 2018-09-04 22:53:19 +00:00
odr_hash-elaborated-types.cpp [ODRHash] Do not rely on Type* when computing the hash. 2018-06-28 13:28:44 +00:00
odr_hash-gnu.cpp Remove unnecessary options from test RUN lines. 2018-09-05 22:14:46 +00:00
odr_hash-vector.cpp [ODRHash] Extend hash to support all Type's. 2018-09-04 22:53:19 +00:00
odr_hash.cl [ODRHash] Extend hash to support all Type's. 2018-09-04 22:53:19 +00:00
odr_hash.cpp [ODRHash] Fix wrong error message with bitfields and mutable. 2020-01-14 21:12:15 -08:00
odr_hash.mm [ODRHash] Fix null pointer dereference for ObjC selectors with empty slots. 2019-06-28 17:42:17 +00:00
on-demand-build.m
on-demand-macros.m
outofdate-rebuild.m Modules: Rename MemoryBufferCache to InMemoryModuleCache 2019-03-09 17:33:56 +00:00
overloadable-attrs.cpp
parse-attributes.modulemap
path-resolution.modulemap
pch-module-macro.m
pch-used.m
pch-with-module-name.m
pch_container.m [llvm-objdump] Print file format in lowercase to match GNU output. 2020-02-12 08:17:01 -08:00
pr19692.cpp
pr20399.cpp
pr20786.cpp
pr21217.cpp
pr21547.cpp
pr21687.cpp
pr24954.cpp
pr25501.cpp
pr26014.cpp
pr26179.cpp
pr27041.cpp
pr27186.cpp
pr27401.cpp PR33924: merge local declarations that have linkage of some kind within 2018-07-04 02:25:38 +00:00
pr27513.cpp
pr27699.cpp
pr27739.cpp
pr27754.cpp
pr27890.cpp
pr28332.cpp
pr28438.cpp
pr28752.cpp
pr28812.cpp
pr31469.cpp
pragma-pack.cpp
prebuilt-implicit-modules.m Allow searching for prebuilt implicit modules. 2020-11-05 13:10:53 -08:00
prebuilt-module.m
preprocess-build-diamond.m
preprocess-build.cpp
preprocess-decluse.cpp
preprocess-missing.modulemap
preprocess-module.cpp make -frewrite-includes also rewrite conditions in #if/#elif 2019-09-18 19:09:41 +00:00
preprocess-nested.cpp
preprocess-umbrella.cpp Fix buildbot break after r360195 2019-05-08 02:03:32 +00:00
preprocess-unavailable.cpp
preprocess.cpp
preprocess.m
private.cpp
private.modulemap
private1.cpp
protocol-redefinition.m Add protocol redefinition to the current scope/context 2018-06-30 00:49:27 +00:00
prune.m [test] Disable Modules/prune.m on NetBSD as it requires 'touch -a' 2018-12-05 11:17:50 +00:00
public-private.modulemap
rebuild.m
recursive.c
recursive_visibility.mm
redecl-add-after-load.cpp
redecl-found-building-chains.cpp
redecl-merge.m [Diagnostics] Try to improve warning message for -Wreturn-type 2019-11-09 17:54:58 +01:00
redecl-merge2.m
redecl-namespaces.mm
redecl-templates.cpp
redeclarations.m
redecls.m
redefinition-c-tagtypes.m
redefinition-same-header.m
redundant-include.mm
relative-dep-gen.cpp Print correctly dependency paths on Windows 2018-09-13 14:27:32 +00:00
relative-import-path.c Remove an unnecessary -f when cp'ing to a file that was just deleted. NFC. 2019-03-11 10:44:10 +00:00
renamed.m
require-modular-includes.m
requires-coroutines.mm
requires-gnuinlineasm.m
requires.m
requires.mm
resolution-change.m [Modules] Do not emit relocation error when -fno-validate-pch is set 2018-08-01 09:50:02 +00:00
self-import-header.m
self-referencing-lambda.cpp
separate_map_tree.cpp
serialized-diags.m
shadow.m
shadowed-submodule.m
signal.m
static_assert.cpp
stddef.c Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
stddef.m
stress-objc.m
stress1.cpp
strict-decluse-headers.cpp Reapply "Fix regression in behavior of clang -x c++-header -fmodule-name=XXX" 2018-11-05 12:46:02 +00:00
strict-decluse.cpp
string_names.cpp
structural-equivalent-recursive-types.c Add a test to cover structural match for recursive data types 2019-11-14 18:32:27 -08:00
subdirectory-module-maps-working-dir.m [HeaderSearch] loadSubdirectoryModuleMaps should respect -working-directory 2018-11-14 01:08:03 +00:00
subframework-from-intermediate-path.m
subframeworks.m Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
submodule-in-private-mmap.m
submodule-visibility-cycles.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
submodule-visibility.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
submodules-merge-defs.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
submodules-preprocess.cpp
submodules.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
submodules.m
suggest-include.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
system-out-of-date-test.m
system_headers.m
tag-injection.c Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
tag-injection.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
target-features.m
target-platform-features.m [Modules] Add platform and environment features to requires clause 2018-09-18 17:11:13 +00:00
template-default-args.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
template-specialization-visibility.cpp
templates-2.mm
templates.mm Reapply "OpaquePtr: Add type to sret attribute" 2020-10-16 11:05:02 -04:00
textual-hdr-in-umbrella-hdr.m
textual-headers.cpp
thread-safety.cpp
typedef-tag-not-visible.m
typo.m
umbrella-header-include-builtin.mm [test] Use %clang_cc1 instead of %clang -cc1 2019-09-27 05:37:06 +00:00
unavailable-local-visibility.test When we leave a module header, make that header visible in its 2018-09-12 23:09:23 +00:00
undefined-type-fixit1.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
unnecessary-module-map-parsing.c
unused-global-init.cpp
update-after-load.cpp
update-exception-spec.cpp
use-after-free.m
use-exportas-for-link.m
using-decl-friend-2.cpp
using-decl-friend.cpp
using-decl-inheritance.cpp Make AST reading work better with LLVM_APPEND_VC_REV=NO 2020-01-27 22:08:37 -05:00
using-decl-redecl.cpp
using-decl.cpp
using-directive-redecl.cpp
using-directive.cpp
va_list.cpp
va_list.m
validate-file-content.m Reapply: [Modules][PCH] Hash input files content 2019-10-15 14:23:55 +00:00
validate-system-headers.m
var-templates.cpp Revert "[CodeGenModule] Assume dso_local for -fpic -fno-semantic-interposition" 2020-02-03 10:09:39 -08:00
visibility-in-instantiation.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
warn-unused-local-typedef.cpp
warning-mismatch.m
wildcard-submodule-exports.cpp
working-dir-flag.m