• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  //===----------------------------------------------------------------------===//
2  //
3  //                     The LLVM Compiler Infrastructure
4  //
5  // This file is dual licensed under the MIT and the University of Illinois Open
6  // Source Licenses. See LICENSE.TXT for details.
7  //
8  //===----------------------------------------------------------------------===//
9  
10  // <valarray>
11  
12  // template<class T> class valarray;
13  
14  // valarray& operator-=(const value_type& x);
15  
16  #include <valarray>
17  #include <cassert>
18  #include <cstddef>
19  
main()20  int main()
21  {
22      {
23          typedef int T;
24          T a1[] = { 1,   2,  3,  4,  5};
25          T a2[] = {-2,  -1,  0,  1,  2};
26          const unsigned N = sizeof(a1)/sizeof(a1[0]);
27          std::valarray<T> v1(a1, N);
28          std::valarray<T> v2(a2, N);
29          v1 -= 3;
30          assert(v1.size() == v2.size());
31          for (std::size_t i = 0; i < v1.size(); ++i)
32              assert(v1[i] == v2[i]);
33      }
34  }
35