blob: e2c796fb103f6c68f386a6fe8d8d24651eb7668a [file] [log] [blame]
// RUN: rm -rf %t
// RUN: mkdir -p %t
// RUN: split-file %s %t
//
// RUN: %clang_cc1 -std=c++20 %t/std.cppm -emit-module-interface -o %t/std.pcm
// RUN: %clang_cc1 -std=c++20 %t/mod.cppm -fprebuilt-module-path=%t -emit-module-interface -o %t/mod.pcm
// RUN: %clang_cc1 -std=c++20 -fprebuilt-module-path=%t -verify %t/main.cpp
//--- std.cppm
export module std;
extern "C++" {
namespace std {
export template <class E>
class initializer_list {
const E* _1;
const E* _2;
};
}
}
//--- mod.cppm
export module mod;
import std;
export struct A {
void func(std::initializer_list<int>) {}
};
//--- main.cpp
// expected-no-diagnostics
import std;
import mod;
int main() {
A{}.func({1,1});
return 0;
}