45 lines · cpp
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-exception6//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 20int 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