Add PR check to suggest alternatives to using undef (#118506)
[llvm-project.git] / clang / test / Modules / no-implicit-declarations.cppm
bloba5129d40194d312a20156a7e7f3ec63a1bca4de4
1 // RUN: rm -rf %t
2 // RUN: mkdir %t
3 //
4 // RUN: %clang_cc1 -std=c++20 %s -emit-module-interface -o %t/a.pcm
5 // RUN: llvm-bcanalyzer --dump --disable-histogram --show-binary-blobs %t/a.pcm > %t/a.dump
6 // RUN: cat %t/a.dump | FileCheck %s
7 //
8 // RUN: %clang_cc1 -std=c++20 %s -emit-reduced-module-interface -o %t/a.pcm
9 // RUN: llvm-bcanalyzer --dump --disable-histogram --show-binary-blobs %t/a.pcm > %t/a.dump
10 // RUN: cat %t/a.dump | FileCheck %s
12 export module a;
13 // Contain something at least to make sure the compiler won't
14 // optimize this out.
15 export int a = 43;
17 // CHECK:  <DECLTYPES_BLOCK
18 // CHECK-NOT: <DECL_TYPEDEF
19 // CHECK:    <TYPE_TYPEDEF
20 // CHECK:    <DECL_CONTEXT_LEXICAL
21 // CHECK:    <DECL_EXPORT
22 // CHECK:    <TYPE_RECORD
23 // CHECK:    <DECL_VAR
24 // CHECK:    <EXPR_INTEGER_LITERAL
25 // CHECK:    <STMT_STOP
26 // CHECK:  </DECLTYPES_BLOCK>