diff options
Diffstat (limited to 'libcxx/test/numerics/numarray/template.valarray/valarray.members')
10 files changed, 0 insertions, 635 deletions
diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_cref.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_cref.pass.cpp deleted file mode 100644 index 919a3a5e499..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_cref.pass.cpp +++ /dev/null @@ -1,51 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// valarray apply(value_type f(const value_type&)) const; - -#include <valarray> -#include <cassert> - -typedef int T; - -T f(const T& t) {return t + 5;} - -int main() -{ - { - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.apply(f); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - const unsigned N1 = 0; - std::valarray<T> v1; - std::valarray<T> v2 = v1.apply(f); - assert(v2.size() == N1); - } - { - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {7, 9, 11, 13, 15, 17, 19, 21, 23, 25}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1+v1).apply(f); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_value.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_value.pass.cpp deleted file mode 100644 index dc7a1a100a2..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/apply_value.pass.cpp +++ /dev/null @@ -1,51 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// valarray apply(value_type f(value_type)) const; - -#include <valarray> -#include <cassert> - -typedef int T; - -T f(T t) {return t + 5;} - -int main() -{ - { - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.apply(f); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - const unsigned N1 = 0; - std::valarray<T> v1; - std::valarray<T> v2 = v1.apply(f); - assert(v2.size() == N1); - } - { - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {7, 9, 11, 13, 15, 17, 19, 21, 23, 25}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1+v1).apply(f); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/cshift.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/cshift.pass.cpp deleted file mode 100644 index 601a6df8d5e..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/cshift.pass.cpp +++ /dev/null @@ -1,127 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// valarray cshift(int i) const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(0); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {4, 5, 6, 7, 8, 9, 10, 1, 2, 3}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(10); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {8, 9, 10, 1, 2, 3, 4, 5, 6, 7}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(17); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {8, 9, 10, 1, 2, 3, 4, 5, 6, 7}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(-3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(-10); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {4, 5, 6, 7, 8, 9, 10, 1, 2, 3}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.cshift(-17); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - const unsigned N1 = 0; - std::valarray<T> v1; - std::valarray<T> v2 = v1.cshift(-17); - assert(v2.size() == N1); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {8, 10, 12, 14, 16, 18, 20, 2, 4, 6}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1 + v1).cshift(3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {16, 18, 20, 2, 4, 6, 8, 10, 12, 14}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1 + v1).cshift(-3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/max.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/max.pass.cpp deleted file mode 100644 index 697d4cd19ed..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/max.pass.cpp +++ /dev/null @@ -1,40 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// value_type max() const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef double T; - T a1[] = {1.5, 2.5, -3, 4, -5.5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert(v1.max() == 4.0); - } - { - typedef double T; - std::valarray<T> v1; - v1.max(); - } - { - typedef double T; - T a1[] = {1.5, 2.5, -3, 4, -5.5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert((2*v1).max() == 8.0); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/min.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/min.pass.cpp deleted file mode 100644 index dac59343715..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/min.pass.cpp +++ /dev/null @@ -1,40 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// value_type min() const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef double T; - T a1[] = {1.5, 2.5, -3, 4, 5.5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert(v1.min() == -3.0); - } - { - typedef double T; - std::valarray<T> v1; - v1.min(); - } - { - typedef double T; - T a1[] = {1.5, 2.5, -3, 4, 5.5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert((2*v1).min() == -6.0); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/resize.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/resize.pass.cpp deleted file mode 100644 index 176d958aab9..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/resize.pass.cpp +++ /dev/null @@ -1,41 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// void resize(size_t n, value_type x = value_type()); - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - v1.resize(8); - assert(v1.size() == 8); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == 0); - v1.resize(0); - assert(v1.size() == 0); - v1.resize(80); - assert(v1.size() == 80); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == 0); - v1.resize(40); - assert(v1.size() == 40); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == 0); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/shift.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/shift.pass.cpp deleted file mode 100644 index 9a617a91a41..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/shift.pass.cpp +++ /dev/null @@ -1,127 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// valarray shift(int i) const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(0); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 0}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(1); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {10, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(9); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(90); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(-1); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(-9); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = v1.shift(-90); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - const unsigned N1 = 0; - std::valarray<T> v1; - std::valarray<T> v2 = v1.shift(-90); - assert(v2.size() == N1); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {8, 10, 12, 14, 16, 18, 20, 0, 0, 0}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1 + v1).shift(3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; - T a2[] = {0, 0, 0, 2, 4, 6, 8, 10, 12, 14}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2 = (v1 + v1).shift(-3); - assert(v2.size() == N1); - for (unsigned i = 0; i < N1; ++i) - assert(v2[i] == a2[i]); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/size.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/size.pass.cpp deleted file mode 100644 index 0aae5b8de7f..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/size.pass.cpp +++ /dev/null @@ -1,41 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// size_t size() const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert(v1.size() == N1); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5}; - const unsigned N1 = 0; - std::valarray<T> v1(a1, N1); - assert(v1.size() == N1); - } - { - typedef int T; - const unsigned N1 = 0; - std::valarray<T> v1; - assert(v1.size() == N1); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/sum.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/sum.pass.cpp deleted file mode 100644 index 189f03d25cf..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/sum.pass.cpp +++ /dev/null @@ -1,28 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// value_type sum() const; - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef double T; - T a1[] = {1.5, 2.5, 3, 4, 5.5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - std::valarray<T> v1(a1, N1); - assert(v1.sum() == 16.5); - } -} diff --git a/libcxx/test/numerics/numarray/template.valarray/valarray.members/swap.pass.cpp b/libcxx/test/numerics/numarray/template.valarray/valarray.members/swap.pass.cpp deleted file mode 100644 index a90a8093637..00000000000 --- a/libcxx/test/numerics/numarray/template.valarray/valarray.members/swap.pass.cpp +++ /dev/null @@ -1,89 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <valarray> - -// template<class T> class valarray; - -// void swap(valarray& v); - -#include <valarray> -#include <cassert> - -int main() -{ - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5}; - T a2[] = {6, 7, 8, 9, 10, 11, 12}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - const unsigned N2 = sizeof(a2)/sizeof(a2[0]); - std::valarray<T> v1(a1, N1); - std::valarray<T> v2(a2, N2); - std::valarray<T> v1_save = v1; - std::valarray<T> v2_save = v2; - v1.swap(v2); - assert(v1.size() == v2_save.size()); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == v2_save[i]); - assert(v2.size() == v1_save.size()); - for (int i = 0; i < v2.size(); ++i) - assert(v2[i] == v1_save[i]); - } - { - typedef int T; - T a1[] = {1, 2, 3, 4, 5}; - const unsigned N1 = sizeof(a1)/sizeof(a1[0]); - const unsigned N2 = 0; - std::valarray<T> v1(a1, N1); - std::valarray<T> v2; - std::valarray<T> v1_save = v1; - std::valarray<T> v2_save = v2; - v1.swap(v2); - assert(v1.size() == v2_save.size()); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == v2_save[i]); - assert(v2.size() == v1_save.size()); - for (int i = 0; i < v2.size(); ++i) - assert(v2[i] == v1_save[i]); - } - { - typedef int T; - T a2[] = {6, 7, 8, 9, 10, 11, 12}; - const unsigned N1 = 0; - const unsigned N2 = sizeof(a2)/sizeof(a2[0]); - std::valarray<T> v1; - std::valarray<T> v2(a2, N2); - std::valarray<T> v1_save = v1; - std::valarray<T> v2_save = v2; - v1.swap(v2); - assert(v1.size() == v2_save.size()); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == v2_save[i]); - assert(v2.size() == v1_save.size()); - for (int i = 0; i < v2.size(); ++i) - assert(v2[i] == v1_save[i]); - } - { - typedef int T; - const unsigned N1 = 0; - const unsigned N2 = 0; - std::valarray<T> v1; - std::valarray<T> v2; - std::valarray<T> v1_save = v1; - std::valarray<T> v2_save = v2; - v1.swap(v2); - assert(v1.size() == v2_save.size()); - for (int i = 0; i < v1.size(); ++i) - assert(v1[i] == v2_save[i]); - assert(v2.size() == v1_save.size()); - for (int i = 0; i < v2.size(); ++i) - assert(v2[i] == v1_save[i]); - } -} |