Files
clang-p2996/clang/test/Modules/Inputs/initializer_list/direct.h
Mital Ashok 482c41e992 [Clang] [Sema] Diagnose unknown std::initializer_list layout in SemaInit (#95580)
This checks if the layout of `std::initializer_list` is something Clang
can handle much earlier and deduplicates the checks in
CodeGen/CGExprAgg.cpp and AST/ExprConstant.cpp

Also now diagnose `union initializer_list` (Fixes #95495), bit-field for
the size (Fixes a crash that would happen during codegen if it were
unnamed), base classes (that wouldn't be initialized) and polymorphic
classes (whose vtable pointer wouldn't be initialized).
2024-06-20 19:44:06 +02:00

10 lines
194 B
C++

namespace std {
using size_t = decltype(sizeof(0));
template<typename T> struct initializer_list {
const T* ptr; size_t sz;
};
template<typename T> int min(initializer_list<T>);
}