xref: /llvm-project/clang/test/Modules/gmodules-codegenopts.c (revision 9fbf5cfebcd770fbe0e453f36ee7c74809339f18)
1 // UNSUPPORTED: target={{.*}}-zos{{.*}}, target={{.*}}-aix{{.*}}
2 // Check that the output from -gmodules can be loaded back by the compiler in
3 // the presence of certain options like optimization level that could break
4 // output. Note: without compiling twice the module is loaded from the in-memory
5 // module cache not load it from the object container.
6 
7 // RUN: rm -rf %t
8 // RUN: %clang_cc1 -x objective-c -fmodules -fmodule-format=obj \
9 // RUN:   -fimplicit-module-maps -fmodules-cache-path=%t %s \
10 // RUN:   -I %S/Inputs -verify -O2
11 
12 // Compile again, confirming we can load the module.
13 // RUN: %clang_cc1 -x objective-c -fmodules -fmodule-format=obj \
14 // RUN:   -fimplicit-module-maps -fmodules-cache-path=%t %s \
15 // RUN:   -I %S/Inputs -verify -O2
16 
17 @import DebugObjC;
18 // expected-no-diagnostics