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 9 // <valarray> 10 11 // template<class T> class valarray; 12 13 // size_t size() const; 14 15 #include <valarray> 16 #include <cassert> 17 18 #include "test_macros.h" 19 20 int main(int, char**) 21 { 22 { 23 typedef int T; 24 T a1[] = {1, 2, 3, 4, 5}; 25 const unsigned N1 = sizeof(a1)/sizeof(a1[0]); 26 std::valarray<T> v1(a1, N1); 27 assert(v1.size() == N1); 28 } 29 { 30 typedef int T; 31 T a1[] = {1, 2, 3, 4, 5}; 32 const unsigned N1 = 0; 33 std::valarray<T> v1(a1, N1); 34 assert(v1.size() == N1); 35 } 36 { 37 typedef int T; 38 const unsigned N1 = 0; 39 std::valarray<T> v1; 40 assert(v1.size() == N1); 41 } 42 43 return 0; 44 } 45