From 37da5b08dae1b3ec6b089955b6acabda5146c8bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Walter?= Date: Sat, 22 Feb 2003 14:03:28 +0000 Subject: [PATCH] Fix for a regression w.r.t. MSVC 6.0 [SVN r17589] --- include/boost/numeric/ublas/banded.hpp | 4 +-- include/boost/numeric/ublas/hermitian.hpp | 4 +-- include/boost/numeric/ublas/iterator.hpp | 32 +++++++++---------- include/boost/numeric/ublas/matrix.hpp | 12 +++---- include/boost/numeric/ublas/matrix_proxy.hpp | 16 +++++----- include/boost/numeric/ublas/matrix_sparse.hpp | 8 ++--- include/boost/numeric/ublas/storage.hpp | 8 ++--- .../boost/numeric/ublas/storage_sparse.hpp | 4 +-- include/boost/numeric/ublas/symmetric.hpp | 4 +-- include/boost/numeric/ublas/triangular.hpp | 4 +-- include/boost/numeric/ublas/vector.hpp | 10 +++--- include/boost/numeric/ublas/vector_proxy.hpp | 6 ++-- include/boost/numeric/ublas/vector_sparse.hpp | 6 ++-- 13 files changed, 59 insertions(+), 59 deletions(-) diff --git a/include/boost/numeric/ublas/banded.hpp b/include/boost/numeric/ublas/banded.hpp index 38570e14..8f56c5fb 100644 --- a/include/boost/numeric/ublas/banded.hpp +++ b/include/boost/numeric/ublas/banded.hpp @@ -277,7 +277,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (banded_matrix &m1, banded_matrix &m2) { m1.swap (m2); @@ -1248,7 +1248,7 @@ namespace boost { namespace numeric { namespace ublas { matrix_swap (scalar_swap (), *this, m); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (banded_adaptor &m1, banded_adaptor &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/hermitian.hpp b/include/boost/numeric/ublas/hermitian.hpp index cfe8288e..2636ad32 100644 --- a/include/boost/numeric/ublas/hermitian.hpp +++ b/include/boost/numeric/ublas/hermitian.hpp @@ -417,7 +417,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (hermitian_matrix &m1, hermitian_matrix &m2) { m1.swap (m2); @@ -1371,7 +1371,7 @@ namespace boost { namespace numeric { namespace ublas { if (this != &m) matrix_swap (scalar_swap (), *this, m, functor_type ()); } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (hermitian_adaptor &m1, hermitian_adaptor &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/iterator.hpp b/include/boost/numeric/ublas/iterator.hpp index 7268a679..c37df7d7 100644 --- a/include/boost/numeric/ublas/iterator.hpp +++ b/include/boost/numeric/ublas/iterator.hpp @@ -131,7 +131,7 @@ namespace boost { namespace numeric { namespace ublas { ++ d; return tmp; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator ++ (derived_iterator_type &d, int) { derived_iterator_type tmp (d); @@ -148,7 +148,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE typename forward_iterator_base::derived_iterator_type operator ++ (forward_iterator_base &it, int) { @@ -174,7 +174,7 @@ namespace boost { namespace numeric { namespace ublas { ++ d; return tmp; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator ++ (derived_iterator_type &d, int) { derived_iterator_type tmp (d); @@ -189,7 +189,7 @@ namespace boost { namespace numeric { namespace ublas { -- d; return tmp; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator -- (derived_iterator_type &d, int) { derived_iterator_type tmp (d); @@ -206,7 +206,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE typename bidirectional_iterator_base::derived_iterator_type operator ++ (bidirectional_iterator_base &it, int) { @@ -245,7 +245,7 @@ namespace boost { namespace numeric { namespace ublas { ++ d; return tmp; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator ++ (derived_iterator_type &d, int) { derived_iterator_type tmp (d); @@ -260,7 +260,7 @@ namespace boost { namespace numeric { namespace ublas { -- d; return tmp; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator -- (derived_iterator_type &d, int) { derived_iterator_type tmp (d); @@ -273,7 +273,7 @@ namespace boost { namespace numeric { namespace ublas { derived_iterator_type tmp (*static_cast (this)); return tmp += n; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator + (const derived_iterator_type &d, derived_difference_type n) { derived_iterator_type tmp (d); @@ -285,7 +285,7 @@ namespace boost { namespace numeric { namespace ublas { derived_iterator_type tmp (*static_cast (this)); return tmp -= n; } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend derived_iterator_type operator - (const derived_iterator_type &d, derived_difference_type n) { derived_iterator_type tmp (d); @@ -316,7 +316,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE typename random_access_iterator_base::derived_iterator_type operator ++ (random_access_iterator_base &it, int) { @@ -723,7 +723,7 @@ namespace boost { namespace numeric { namespace ublas { } #endif -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend reverse_iterator_base operator + (const reverse_iterator_base &it, difference_type n) { reverse_iterator_base tmp (it); @@ -754,7 +754,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE reverse_iterator_base operator + (const reverse_iterator_base &it, std::ptrdiff_t n) { @@ -834,7 +834,7 @@ namespace boost { namespace numeric { namespace ublas { } #endif -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend reverse_iterator_base1 operator + (const reverse_iterator_base1 &it, difference_type n) { reverse_iterator_base1 tmp (it); @@ -892,7 +892,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE reverse_iterator_base1 operator + (const reverse_iterator_base1 &it, std::ptrdiff_t n) { @@ -972,7 +972,7 @@ namespace boost { namespace numeric { namespace ublas { } #endif -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend reverse_iterator_base2 operator + (const reverse_iterator_base2 &it, difference_type n) { reverse_iterator_base2 tmp (it); @@ -1030,7 +1030,7 @@ namespace boost { namespace numeric { namespace ublas { } }; -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) && ! defined (BOOST_MSVC6_MEMBER_TEMPLATES) template BOOST_UBLAS_INLINE reverse_iterator_base2 operator + (const reverse_iterator_base2 &it, std::ptrdiff_t n) { diff --git a/include/boost/numeric/ublas/matrix.hpp b/include/boost/numeric/ublas/matrix.hpp index d8b68c09..e415dcbb 100644 --- a/include/boost/numeric/ublas/matrix.hpp +++ b/include/boost/numeric/ublas/matrix.hpp @@ -219,7 +219,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix &m1, matrix &m2) { m1.swap (m2); @@ -1094,7 +1094,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (vector_of_vector &m1, vector_of_vector &m2) { m1.swap (m2); @@ -1934,7 +1934,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (size2_, m.size2_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (identity_matrix &m1, identity_matrix &m2) { m1.swap (m2); @@ -2385,7 +2385,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (size2_, m.size2_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (zero_matrix &m1, zero_matrix &m2) { m1.swap (m2); @@ -2813,7 +2813,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (value_, m.value_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (scalar_matrix &m1, scalar_matrix &m2) { m1.swap (m2); @@ -3359,7 +3359,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap_ranges (data_ [i], data_ [i] + size2_, m.data_ [i]); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (c_matrix &m1, c_matrix &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/matrix_proxy.hpp b/include/boost/numeric/ublas/matrix_proxy.hpp index 049fc3a5..4f2031f8 100644 --- a/include/boost/numeric/ublas/matrix_proxy.hpp +++ b/include/boost/numeric/ublas/matrix_proxy.hpp @@ -227,7 +227,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, mr); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_row &mr1, matrix_row &mr2) { mr1.swap (mr2); @@ -755,7 +755,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, mc); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_column &mc1, matrix_column &mc2) { mc1.swap (mc2); @@ -1279,7 +1279,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, mvr); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_vector_range &mvr1, matrix_vector_range &mvr2) { mvr1.swap (mvr2); @@ -1779,7 +1779,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, mvs); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_vector_slice &mvs1, matrix_vector_slice &mvs2) { mvs1.swap (mvs2); @@ -2305,7 +2305,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, mvi); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_vector_indirect &mvi1, matrix_vector_indirect &mvi2) { mvi1.swap (mvi2); @@ -2819,7 +2819,7 @@ namespace boost { namespace numeric { namespace ublas { matrix_swap (scalar_swap (), *this, mr); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_range &mr1, matrix_range &mr2) { mr1.swap (mr2); @@ -3739,7 +3739,7 @@ namespace boost { namespace numeric { namespace ublas { matrix_swap (scalar_swap (), *this, ms); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_slice &ms1, matrix_slice &ms2) { ms1.swap (ms2); @@ -4649,7 +4649,7 @@ namespace boost { namespace numeric { namespace ublas { matrix_swap (scalar_swap (), *this, mi); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (matrix_indirect &mi1, matrix_indirect &mi2) { mi1.swap (mi2); diff --git a/include/boost/numeric/ublas/matrix_sparse.hpp b/include/boost/numeric/ublas/matrix_sparse.hpp index 59db0f88..a739119c 100644 --- a/include/boost/numeric/ublas/matrix_sparse.hpp +++ b/include/boost/numeric/ublas/matrix_sparse.hpp @@ -421,7 +421,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (sparse_matrix &m1, sparse_matrix &m2) { m1.swap (m2); @@ -1500,7 +1500,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (sparse_vector_of_sparse_vector &m1, sparse_vector_of_sparse_vector &m2) { m1.swap (m2); @@ -2722,7 +2722,7 @@ namespace boost { namespace numeric { namespace ublas { value_data ().swap (m.value_data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (compressed_matrix &m1, compressed_matrix &m2) { m1.swap (m2); @@ -4012,7 +4012,7 @@ namespace boost { namespace numeric { namespace ublas { value_data ().swap (m.value_data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (coordinate_matrix &m1, coordinate_matrix &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/storage.hpp b/include/boost/numeric/ublas/storage.hpp index e38f0121..25ef9508 100644 --- a/include/boost/numeric/ublas/storage.hpp +++ b/include/boost/numeric/ublas/storage.hpp @@ -192,7 +192,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (data_, a.data_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (unbounded_array &a1, unbounded_array &a2) { a1.swap (a2); @@ -413,7 +413,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap_ranges (data_, data_ + std::max (size_, a.size_), a.data_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (bounded_array &a1, bounded_array &a2) { a1.swap (a2); @@ -681,7 +681,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (data_, a.data_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (array_adaptor &a1, array_adaptor &a2) { a1.swap (a2); @@ -939,7 +939,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (data_, a.data_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (array_adaptor &a1, array_adaptor &a2) { a1.swap (a2); diff --git a/include/boost/numeric/ublas/storage_sparse.hpp b/include/boost/numeric/ublas/storage_sparse.hpp index 517a4f3e..3267a7d5 100644 --- a/include/boost/numeric/ublas/storage_sparse.hpp +++ b/include/boost/numeric/ublas/storage_sparse.hpp @@ -381,7 +381,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (size_, a.size_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (map_array &a1, map_array &a2) { a1.swap (a2); @@ -763,7 +763,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (size_, a.size_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (set_array &a1, set_array &a2) { a1.swap (a2); diff --git a/include/boost/numeric/ublas/symmetric.hpp b/include/boost/numeric/ublas/symmetric.hpp index 6aa1ab3e..fd77660b 100644 --- a/include/boost/numeric/ublas/symmetric.hpp +++ b/include/boost/numeric/ublas/symmetric.hpp @@ -249,7 +249,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (symmetric_matrix &m1, symmetric_matrix &m2) { m1.swap (m2); @@ -1125,7 +1125,7 @@ namespace boost { namespace numeric { namespace ublas { if (this != &m) matrix_swap (scalar_swap (), *this, m, functor_type ()); } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (symmetric_adaptor &m1, symmetric_adaptor &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/triangular.hpp b/include/boost/numeric/ublas/triangular.hpp index 14e695c4..36f9f378 100644 --- a/include/boost/numeric/ublas/triangular.hpp +++ b/include/boost/numeric/ublas/triangular.hpp @@ -243,7 +243,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (m.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (triangular_matrix &m1, triangular_matrix &m2) { m1.swap (m2); @@ -1149,7 +1149,7 @@ namespace boost { namespace numeric { namespace ublas { if (this != &m) matrix_swap (scalar_swap (), *this, m); } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (triangular_adaptor &m1, triangular_adaptor &m2) { m1.swap (m2); diff --git a/include/boost/numeric/ublas/vector.hpp b/include/boost/numeric/ublas/vector.hpp index aef6775d..c8ed398b 100644 --- a/include/boost/numeric/ublas/vector.hpp +++ b/include/boost/numeric/ublas/vector.hpp @@ -213,7 +213,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (v.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (vector &v1, vector &v2) { v1.swap (v2); @@ -616,7 +616,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (index_, v.index_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (unit_vector &v1, unit_vector &v2) { v1.swap (v2); @@ -855,7 +855,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (size_, v.size_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (zero_vector &v1, zero_vector &v2) { v1.swap (v2); @@ -1065,7 +1065,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap (value_, v.value_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (scalar_vector &v1, scalar_vector &v2) { v1.swap (v2); @@ -1410,7 +1410,7 @@ namespace boost { namespace numeric { namespace ublas { std::swap_ranges (data_, data_ + size_, v.data_); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (c_vector &v1, c_vector &v2) { v1.swap (v2); diff --git a/include/boost/numeric/ublas/vector_proxy.hpp b/include/boost/numeric/ublas/vector_proxy.hpp index 44a99998..a7fcf9e8 100644 --- a/include/boost/numeric/ublas/vector_proxy.hpp +++ b/include/boost/numeric/ublas/vector_proxy.hpp @@ -239,7 +239,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, vr); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (vector_range &vr1, vector_range &vr2) { vr1.swap (vr2); @@ -796,7 +796,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, vs); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (vector_slice &vs1, vector_slice &vs2) { vs1.swap (vs2); @@ -1349,7 +1349,7 @@ namespace boost { namespace numeric { namespace ublas { vector_swap (scalar_swap (), *this, vi); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (vector_indirect &vi1, vector_indirect &vi2) { vi1.swap (vi2); diff --git a/include/boost/numeric/ublas/vector_sparse.hpp b/include/boost/numeric/ublas/vector_sparse.hpp index 17cd6df8..078d8938 100644 --- a/include/boost/numeric/ublas/vector_sparse.hpp +++ b/include/boost/numeric/ublas/vector_sparse.hpp @@ -411,7 +411,7 @@ namespace boost { namespace numeric { namespace ublas { data ().swap (v.data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (sparse_vector &v1, sparse_vector &v2) { v1.swap (v2); @@ -942,7 +942,7 @@ namespace boost { namespace numeric { namespace ublas { value_data ().swap (v.value_data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (compressed_vector &v1, compressed_vector &v2) { v1.swap (v2); @@ -1524,7 +1524,7 @@ namespace boost { namespace numeric { namespace ublas { value_data ().swap (v.value_data ()); } } -#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if ! defined (BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined (BOOST_MSVC6_MEMBER_TEMPLATES) BOOST_UBLAS_INLINE friend void swap (coordinate_vector &v1, coordinate_vector &v2) { v1.swap (v2);