[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / Modules / reduced-bmi-empty-module-purview-std.cppm
blob3146fda3555fdfa700602a01fa6fa7126cfe4f65
1 // Test that we won't write additional information from std namespace by default
2 // into the Reduced BMI if the module purview is empty.
3 //
4 // RUN: rm -rf %t
5 // RUN: mkdir -p %t
6 // RUN: split-file %s %t
7 //
8 // RUN: %clang_cc1 -std=c++20 %t/A.cppm -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 %t/A.cppm
12 //--- std.h
13 namespace std {
14   typedef decltype(sizeof(0)) size_t;
15   enum class align_val_t : std::size_t {};
17   class bad_alloc { };
20 //--- A.cppm
21 module;
22 #include "std.h"
23 export module A;
25 // CHECK-NOT: <DECL_NAMESPACE
26 // CHECK-NOT: <DECL_CONTEXT_LEXICAL
27 // CHECK-NOT: <DELAYED_NAMESPACE_LEXICAL_VISIBLE_RECORD