forked from OSchip/llvm-project
Don't delete the module you're inspecting
Prior to this patch when you used `clang -module-file-info` clang would delete the module on completion because the module was treated as an output file. This fixes the issue so you don't need to invoke cc1 directly to get module file information. Reviewed By: steven_wu, phosek Differential Revision: https://reviews.llvm.org/D103547
This commit is contained in:
parent
b865eead76
commit
13a9b2220f
|
@ -4883,6 +4883,11 @@ const char *Driver::GetNamedOutputPath(Compilation &C, const JobAction &JA,
|
|||
return "-";
|
||||
}
|
||||
|
||||
if (JA.getType() == types::TY_ModuleFile &&
|
||||
C.getArgs().getLastArg(options::OPT_module_file_info)) {
|
||||
return "-";
|
||||
}
|
||||
|
||||
// Is this the assembly listing for /FA?
|
||||
if (JA.getType() == types::TY_PP_Asm &&
|
||||
(C.getArgs().hasArg(options::OPT__SLASH_FA) ||
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
|
||||
@import DependsOnModule;
|
||||
|
||||
// RUN: rm -rf %t %t-obj
|
||||
// RUN: %clang_cc1 -w -Wunused -fmodules -fmodule-format=obj -fimplicit-module-maps -fdisable-module-hash -fmodules-cache-path=%t-obj -F %S/Inputs -DBLARG -DWIBBLE=WOBBLE -fmodule-feature myfeature %s
|
||||
// RUN: %clang -module-file-info %t-obj/DependsOnModule.pcm | FileCheck %s
|
||||
// RUN: %clang -module-file-info %t-obj/DependsOnModule.pcm | FileCheck %s
|
||||
|
||||
// This test is just verifying that the clang driver doesn't delete the input
|
||||
// file when -module-file-info is passed. We verify this by dumping the module
|
||||
// twice subsequently. We have other tests to verify the contents of the module
|
||||
// and the tool output (see: module_file_info.m)
|
||||
|
||||
// CHECK: Generated by this Clang:
|
||||
|
||||
// CHECK: Module name: DependsOnModule
|
Loading…
Reference in New Issue