Whenever -fmodule-name=top_level_module name is parsed, and clang actually tries to import top_level_module, the headers are imported textually and the module isn't actually built. However, the dependency scanner could still record it as a potential dependency if the module was reimported and thus recorded by the preprocessor callbacks. This change avoids collecting this kind of module as a dependency by verifying that we don't collect top level modules without actual PCM files. Differential Revision: https://reviews.llvm.org/D106100
8 lines
333 B
JSON
8 lines
333 B
JSON
[
|
|
{
|
|
"directory": "DIR",
|
|
"command": "clang -E DIR/modules-fmodule-name-no-module-built.m -IInputs -D INCLUDE_HEADER2 -MD -MF DIR/modules_cdb.d -fmodules -fcxx-modules -fmodules-cache-path=DIR/module-cache -fimplicit-modules -fmodule-name=header3 -fimplicit-module-maps",
|
|
"file": "DIR/modules-fmodule-name-no-module-built.m"
|
|
}
|
|
]
|