xref: /llvm-project/clang/test/Modules/Inputs/PR27401/a.h (revision 928c8254a9cfee98bd13c754723963bd8865c1b5)
1*928c8254SVassil Vassilev #ifndef _LIBCPP_ALGORITHM
2*928c8254SVassil Vassilev #define _LIBCPP_ALGORITHM
3*928c8254SVassil Vassilev template <class _Tp, _Tp>
4*928c8254SVassil Vassilev struct integral_constant {
5*928c8254SVassil Vassilev   static const _Tp value = _Tp();
6*928c8254SVassil Vassilev };
7*928c8254SVassil Vassilev 
8*928c8254SVassil Vassilev template <class _Tp>
9*928c8254SVassil Vassilev struct is_nothrow_default_constructible
10*928c8254SVassil Vassilev 	: integral_constant<bool, __is_constructible(_Tp)> {};
11*928c8254SVassil Vassilev 
12*928c8254SVassil Vassilev template <class _Tp>
13*928c8254SVassil Vassilev struct is_nothrow_move_constructible
14*928c8254SVassil Vassilev     : integral_constant<bool, __is_constructible(_Tp, _Tp)> {};
15*928c8254SVassil Vassilev 
16*928c8254SVassil Vassilev class allocator {};
17*928c8254SVassil Vassilev #endif
18