1
2 // Causes the CMI to have instantiated a deferred noexept spec that
3 // the textually included file has not.
4
5 typedef long unsigned int size_t;
6
7
8 template<typename _Tp, _Tp __v>
9 struct integral_constant
10 {
11 static constexpr _Tp value = __v;
12 typedef integral_constant<_Tp, __v> type;
13 };
14 template<typename _Tp, _Tp __v>
15 constexpr _Tp integral_constant<_Tp, __v>::value;
16
17 template<typename _Head>
18 struct _Tuple_impl : _Head
19 {
20 _Tuple_impl(_Tuple_impl&& __in)
21 noexcept (integral_constant<bool,
22 noexcept(_Head(static_cast<_Head &&>(*(_Head *) (0))))>::type::value);
23 };
24
25 template <typename _Dp>
26 struct __uniq_ptr_impl
27 {
28 __uniq_ptr_impl (__uniq_ptr_impl&& __u) noexcept
29 : _M_t(static_cast <_Tuple_impl<_Dp> &&>(__u._M_t))
30 {}
31
32 _Tuple_impl<_Dp> _M_t;
33 };
34
35 struct _Impl_deleter {};
36
37 typedef __uniq_ptr_impl<_Impl_deleter> up;
38
39 inline void frob (up && p)
40 {
41 up _M_cmpts (static_cast <up &&> (p));
42 }