1 // https://github.com/llvm/llvm-project/issues/59780
5 // RUN: split-file %s %t
7 // RUN: %clang_cc1 -std=c++20 %t/data.cppm -emit-module-interface -o %t/data.pcm
8 // RUN: %clang_cc1 -std=c++20 %t/main.cpp -fprebuilt-module-path=%t -fsyntax-only -verify
10 // RUN: %clang_cc1 -std=c++20 %t/data.cppm -emit-reduced-module-interface -o %t/data.pcm
11 // RUN: %clang_cc1 -std=c++20 %t/main.cpp -fprebuilt-module-path=%t -fsyntax-only -verify
23 requires(__is_trivially_destructible(_Tp))
27 requires(!__is_trivially_destructible(_Tp))
35 unique_ptr(void* __p) {}
45 export namespace std {
46 using std::unique_ptr;
50 export std::expected<std::unique_ptr<int>> parse() {
51 return std::unique_ptr<int>(nullptr);
55 // expected-no-diagnostics
58 int main(int argc, const char *argv[]) {
59 std::expected<std::unique_ptr<int>> result = parse();