[PowerPC] Collect some CallLowering arguments into a struct. [NFC]
[llvm-project.git] / libcxx / test / std / containers / views / span.tuple / tuple_size.pass.cpp
blob1e8b8d0a9c4a03e9fc65f51f2e79028c770d79ac
1 //===----------------------------------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 // UNSUPPORTED: c++98, c++03, c++11, c++14, c++17
10 // <span>
12 // tuple_size<span<T, N> >::value
14 #include <span>
16 #include "test_macros.h"
18 template <class T, std::size_t N>
19 void test()
22 typedef std::span<T, N> C;
23 static_assert((std::tuple_size<C>::value == N), "");
26 typedef std::span<T const, N> C;
27 static_assert((std::tuple_size<C>::value == N), "");
30 typedef std::span<T volatile, N> C;
31 static_assert((std::tuple_size<C>::value == N), "");
34 typedef std::span<T const volatile, N> C;
35 static_assert((std::tuple_size<C>::value == N), "");
39 int main(int, char**)
41 test<double, 0>();
42 test<double, 3>();
43 test<double, 5>();
45 return 0;