Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r65770 - in branches/release: . boost boost/bimap boost/gil boost/graph boost/intrusive boost/msm boost/multi_array boost/numeric/ublas boost/property_tree boost/signals boost/signals2 boost/spirit boost/spirit/home boost/spirit/home/karma boost/spirit/home/support boost/statechart boost/uuid boost/variant boost/wave libs libs/array/test libs/bimap libs/concept_check libs/graph_parallel libs/mpl/doc/refmanual libs/mpl/doc/src/refmanual libs/msm libs/multi_array/doc/xml libs/multi_array/example libs/multi_array/test libs/numeric/ublas libs/numeric/ublas/doc libs/property_tree libs/serialization/test libs/signals libs/signals2 libs/spirit libs/spirit/classic/example libs/spirit/doc libs/spirit/example libs/spirit/phoenix libs/spirit/test libs/spirit/test/qi libs/static_assert libs/timer libs/utility libs/utility/swap/test libs/uuid libs/wave more tools tools/bcp tools/regression tools/release tools/wave
From: jewillco_at_[hidden]
Date: 2010-10-05 14:15:29


Author: jewillco
Date: 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
New Revision: 65770
URL: http://svn.boost.org/trac/boost/changeset/65770

Log:
Merged r47768 (new example) and r62611 (fix for bug #4032) from trunk; refs #4032
Added:
   branches/release/libs/multi_array/example/resize_from_other.cpp
      - copied, changed from r47768, /trunk/libs/multi_array/example/resize_from_other.cpp
Properties modified:
   branches/release/ (props changed)
   branches/release/INSTALL (props changed)
   branches/release/Jamroot (props changed)
   branches/release/LICENSE_1_0.txt (props changed)
   branches/release/boost/ (props changed)
   branches/release/boost-build.jam (props changed)
   branches/release/boost.css (props changed)
   branches/release/boost.png (props changed)
   branches/release/boost/bimap/ (props changed)
   branches/release/boost/config.hpp (props changed)
   branches/release/boost/gil/ (props changed)
   branches/release/boost/graph/ (props changed)
   branches/release/boost/intrusive/ (props changed)
   branches/release/boost/msm/ (props changed)
   branches/release/boost/numeric/ublas/ (props changed)
   branches/release/boost/property_tree/ (props changed)
   branches/release/boost/signals/ (props changed)
   branches/release/boost/signals2/ (props changed)
   branches/release/boost/signals2.hpp (props changed)
   branches/release/boost/spirit/ (props changed)
   branches/release/boost/spirit/home/ (props changed)
   branches/release/boost/spirit/home/karma/ (props changed)
   branches/release/boost/spirit/home/support/attributes.hpp (props changed)
   branches/release/boost/statechart/ (props changed)
   branches/release/boost/uuid/ (props changed)
   branches/release/boost/variant/ (props changed)
   branches/release/boost/wave/ (props changed)
   branches/release/bootstrap.bat (props changed)
   branches/release/bootstrap.sh (props changed)
   branches/release/index.htm (props changed)
   branches/release/libs/ (props changed)
   branches/release/libs/array/test/array0.cpp (props changed)
   branches/release/libs/bimap/ (props changed)
   branches/release/libs/graph_parallel/ (props changed)
   branches/release/libs/mpl/doc/refmanual/broken-compiler-workarounds.html (props changed)
   branches/release/libs/mpl/doc/refmanual/categorized-index-concepts.html (props changed)
   branches/release/libs/mpl/doc/refmanual/cfg-no-preprocessed-headers.html (props changed)
   branches/release/libs/mpl/doc/refmanual/composition-and-argument-binding.html (props changed)
   branches/release/libs/mpl/doc/refmanual/data-types-concepts.html (props changed)
   branches/release/libs/mpl/doc/refmanual/data-types-miscellaneous.html (props changed)
   branches/release/libs/mpl/doc/refmanual/extensible-associative-sequence.html (props changed)
   branches/release/libs/mpl/doc/refmanual/inserter-class.html (props changed)
   branches/release/libs/mpl/doc/refmanual/tag-dispatched-metafunction.html (props changed)
   branches/release/libs/mpl/doc/refmanual/trivial-metafunctions-summary.html (props changed)
   branches/release/libs/mpl/doc/src/refmanual/Iterators-Iterator.rst (props changed)
   branches/release/libs/msm/ (props changed)
   branches/release/libs/numeric/ublas/ (props changed)
   branches/release/libs/numeric/ublas/doc/ (props changed)
   branches/release/libs/property_tree/ (props changed)
   branches/release/libs/serialization/test/ (props changed)
   branches/release/libs/serialization/test/test_diamond_complex.cpp (props changed)
   branches/release/libs/signals/ (props changed)
   branches/release/libs/signals2/ (props changed)
   branches/release/libs/spirit/ (props changed)
   branches/release/libs/spirit/classic/example/ (props changed)
   branches/release/libs/spirit/doc/ (props changed)
   branches/release/libs/spirit/example/ (props changed)
   branches/release/libs/spirit/phoenix/ (props changed)
   branches/release/libs/spirit/test/ (props changed)
   branches/release/libs/spirit/test/qi/optional.cpp (props changed)
   branches/release/libs/static_assert/ (props changed)
   branches/release/libs/timer/ (props changed)
   branches/release/libs/utility/swap.html (props changed)
   branches/release/libs/utility/swap/test/std_bitset.cpp (props changed)
   branches/release/libs/utility/value_init_test.cpp (props changed)
   branches/release/libs/uuid/ (props changed)
   branches/release/libs/wave/ (props changed)
   branches/release/more/ (props changed)
   branches/release/rst.css (props changed)
   branches/release/tools/ (props changed)
   branches/release/tools/bcp/ (props changed)
   branches/release/tools/regression/ (props changed)
   branches/release/tools/release/ (props changed)
   branches/release/tools/wave/ (props changed)
Text files modified:
   branches/release/boost/concept_check.hpp | 38 ++++++++++++++++++++++++++++++++++++
   branches/release/boost/multi_array/collection_concept.hpp | 42 ++-------------------------------------
   branches/release/boost/multi_array/concept_checks.hpp | 27 +++++++++++++++++--------
   branches/release/boost/multi_array/multi_array_ref.hpp | 20 +++++++++---------
   branches/release/boost/multi_array/subarray.hpp | 8 +++---
   branches/release/boost/multi_array/view.hpp | 10 ++++----
   branches/release/libs/concept_check/reference.htm | 4 +++
   branches/release/libs/multi_array/doc/xml/MultiArray.xml | 8 +++++++
   branches/release/libs/multi_array/example/resize_from_other.cpp | 2
   branches/release/libs/multi_array/test/concept_checks.cpp | 22 ++++++++++----------
   10 files changed, 102 insertions(+), 79 deletions(-)

Modified: branches/release/boost/concept_check.hpp
==============================================================================
--- branches/release/boost/concept_check.hpp (original)
+++ branches/release/boost/concept_check.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -1,5 +1,7 @@
 //
 // (C) Copyright Jeremy Siek 2000.
+// Copyright 2002 The Trustees of Indiana University.
+//
 // Distributed under the Boost Software License, Version 1.0. (See
 // accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
@@ -999,6 +1001,42 @@
 
   // HashedAssociativeContainer
 
+ BOOST_concept(Collection,(C))
+ {
+ BOOST_CONCEPT_USAGE(Collection)
+ {
+ boost::function_requires<boost::InputIteratorConcept<iterator> >();
+ boost::function_requires<boost::InputIteratorConcept<const_iterator> >();
+ boost::function_requires<boost::CopyConstructibleConcept<value_type> >();
+ const_constraints(c);
+ i = c.begin();
+ i = c.end();
+ c.swap(c);
+ }
+
+ void const_constraints(const C& c) {
+ ci = c.begin();
+ ci = c.end();
+ n = c.size();
+ b = c.empty();
+ }
+
+ private:
+ typedef typename C::value_type value_type;
+ typedef typename C::iterator iterator;
+ typedef typename C::const_iterator const_iterator;
+ typedef typename C::reference reference;
+ typedef typename C::const_reference const_reference;
+ // typedef typename C::pointer pointer;
+ typedef typename C::difference_type difference_type;
+ typedef typename C::size_type size_type;
+
+ C c;
+ bool b;
+ iterator i;
+ const_iterator ci;
+ size_type n;
+ };
 } // namespace boost
 
 # include <boost/concept/detail/concept_undef.hpp>

Modified: branches/release/boost/multi_array/collection_concept.hpp
==============================================================================
--- branches/release/boost/multi_array/collection_concept.hpp (original)
+++ branches/release/boost/multi_array/collection_concept.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -17,46 +17,10 @@
 
 namespace boost {
 namespace detail {
-namespace multi_array {
-
- //===========================================================================
- // Collection Concept
-
- template <class Collection>
- struct CollectionConcept
- {
- typedef typename Collection::value_type value_type;
- typedef typename Collection::iterator iterator;
- typedef typename Collection::const_iterator const_iterator;
- typedef typename Collection::reference reference;
- typedef typename Collection::const_reference const_reference;
- // typedef typename Collection::pointer pointer;
- typedef typename Collection::difference_type difference_type;
- typedef typename Collection::size_type size_type;
-
- void constraints() {
- boost::function_requires<boost::InputIteratorConcept<iterator> >();
- boost::function_requires<boost::InputIteratorConcept<const_iterator> >();
- boost::function_requires<boost::CopyConstructibleConcept<value_type> >();
- const_constraints(c);
- i = c.begin();
- i = c.end();
- c.swap(c);
- }
- void const_constraints(const Collection& c) {
- ci = c.begin();
- ci = c.end();
- n = c.size();
- b = c.empty();
- }
- Collection c;
- bool b;
- iterator i;
- const_iterator ci;
- size_type n;
- };
-
+namespace multi_array { // Old location for this
+ using boost::CollectionConcept;
 }
 }
+
 }
 #endif // COLLECTION_CONCEPT_RG103101_HPP

Modified: branches/release/boost/multi_array/concept_checks.hpp
==============================================================================
--- branches/release/boost/multi_array/concept_checks.hpp (original)
+++ branches/release/boost/multi_array/concept_checks.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -22,9 +22,9 @@
 #include "boost/iterator/iterator_concepts.hpp"
 
 namespace boost {
-namespace detail {
-namespace multi_array {
+namespace multi_array_concepts {
 
+namespace detail {
   //
   // idgen_helper -
   // This is a helper for generating index_gen instantiations with
@@ -56,6 +56,8 @@
     }
   };
 
+} // namespace detail
+
 
   template <typename Array, std::size_t NumDims >
   struct ConstMultiArrayConcept
@@ -70,10 +72,10 @@
       // RG - a( CollectionArchetype) when available...
       a[ id ];
       // Test slicing, keeping only the first dimension, losing the rest
- idgen_helper<NumDims-1>::call(a,idgen[range],id);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],id);
 
       // Test slicing, keeping all dimensions.
- idgen_helper<NumDims-1>::call(a,idgen[range],range);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],range);
 
       st = a.size();
       st = a.num_dimensions();
@@ -134,10 +136,10 @@
       value_type vt = a[ id ];
 
       // Test slicing, keeping only the first dimension, losing the rest
- idgen_helper<NumDims-1>::call(a,idgen[range],id);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],id);
 
       // Test slicing, keeping all dimensions.
- idgen_helper<NumDims-1>::call(a,idgen[range],range);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],range);
 
       st = a.size();
       st = a.num_dimensions();
@@ -158,10 +160,10 @@
       // value_type vt = a[ id ];
 
       // Test slicing, keeping only the first dimension, losing the rest
- idgen_helper<NumDims-1>::call(a,idgen[range],id);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],id);
 
       // Test slicing, keeping all dimensions.
- idgen_helper<NumDims-1>::call(a,idgen[range],range);
+ detail::idgen_helper<NumDims-1>::call(a,idgen[range],range);
 
       st = a.size();
       st = a.num_dimensions();
@@ -208,7 +210,14 @@
 
 
 } // namespace multi_array
-} // namespace detail
+
+namespace detail {
+ namespace multi_array { // Old locations for these
+ using boost::multi_array_concepts::ConstMultiArrayConcept;
+ using boost::multi_array_concepts::MutableMultiArrayConcept;
+ }
+}
+
 } // namespace boost
 
 

Modified: branches/release/boost/multi_array/multi_array_ref.hpp
==============================================================================
--- branches/release/boost/multi_array/multi_array_ref.hpp (original)
+++ branches/release/boost/multi_array/multi_array_ref.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -89,7 +89,7 @@
   explicit const_multi_array_ref(TPtr base, const ExtentList& extents) :
     base_(base), storage_(c_storage_order()) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<ExtentList> >();
+ CollectionConcept<ExtentList> >();
 
     index_base_list_.assign(0);
     init_multi_array_ref(extents.begin());
@@ -100,7 +100,7 @@
                        const general_storage_order<NumDims>& so) :
     base_(base), storage_(so) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<ExtentList> >();
+ CollectionConcept<ExtentList> >();
 
     index_base_list_.assign(0);
     init_multi_array_ref(extents.begin());
@@ -145,7 +145,7 @@
 #endif // BOOST_NO_SFINAE
   reindex(const BaseList& values) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<BaseList> >();
+ CollectionConcept<BaseList> >();
     boost::detail::multi_array::
       copy_n(values.begin(),num_dimensions(),index_base_list_.begin());
     origin_offset_ =
@@ -163,7 +163,7 @@
   template <typename SizeList>
   void reshape(const SizeList& extents) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<SizeList> >();
+ CollectionConcept<SizeList> >();
     BOOST_ASSERT(num_elements_ ==
                  std::accumulate(extents.begin(),extents.end(),
                                  size_type(1),std::multiplies<size_type>()));
@@ -210,7 +210,7 @@
   template <typename IndexList>
   const element& operator()(IndexList indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<const element&>(),
                                       indices,origin(),
                                       shape(),strides(),index_bases());
@@ -448,7 +448,7 @@
   explicit multi_array_ref(T* base, const ExtentList& extents) :
     super_type(base,extents) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<ExtentList> >();
+ CollectionConcept<ExtentList> >();
   }
 
   template <class ExtentList>
@@ -456,7 +456,7 @@
                            const general_storage_order<NumDims>& so) :
     super_type(base,extents,so) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<ExtentList> >();
+ CollectionConcept<ExtentList> >();
   }
 
 
@@ -478,7 +478,7 @@
   template <typename ConstMultiArray>
   multi_array_ref& operator=(const ConstMultiArray& other) {
     function_requires<
- detail::multi_array::
+ multi_array_concepts::
       ConstMultiArrayConcept<ConstMultiArray,NumDims> >();
 
     // make sure the dimensions agree
@@ -511,7 +511,7 @@
   template <class IndexList>
   element& operator()(const IndexList& indices) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<element&>(),
                                       indices,origin(),
                                       this->shape(),this->strides(),
@@ -578,7 +578,7 @@
   template <class IndexList>
   const element& operator()(const IndexList& indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::operator()(indices);
   }
 

Modified: branches/release/boost/multi_array/subarray.hpp
==============================================================================
--- branches/release/boost/multi_array/subarray.hpp (original)
+++ branches/release/boost/multi_array/subarray.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -80,7 +80,7 @@
   template <typename IndexList>
   const element& operator()(const IndexList& indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<const element&>(),
                                       indices,origin(),
                                       shape(),strides(),index_bases());
@@ -231,7 +231,7 @@
   // Assignment from other ConstMultiArray types.
   template <typename ConstMultiArray>
   sub_array& operator=(const ConstMultiArray& other) {
- function_requires< boost::detail::multi_array::ConstMultiArrayConcept<
+ function_requires< boost::multi_array_concepts::ConstMultiArrayConcept<
         ConstMultiArray, NumDims> >();
 
     // make sure the dimensions agree
@@ -288,7 +288,7 @@
   template <class IndexList>
   element& operator()(const IndexList& indices) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<element&>(),
                                       indices,origin(),
                                       this->shape(),this->strides(),
@@ -323,7 +323,7 @@
   template <class IndexList>
   const element& operator()(const IndexList& indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::operator()(indices);
   }
 

Modified: branches/release/boost/multi_array/view.hpp
==============================================================================
--- branches/release/boost/multi_array/view.hpp (original)
+++ branches/release/boost/multi_array/view.hpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -81,7 +81,7 @@
 #endif
   reindex(const BaseList& values) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<BaseList> >();
+ CollectionConcept<BaseList> >();
     boost::detail::multi_array::
       copy_n(values.begin(),num_dimensions(),index_base_list_.begin());
     origin_offset_ =
@@ -119,7 +119,7 @@
   template <typename IndexList>
   const element& operator()(IndexList indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<const element&>(),
                                       indices,origin(),
                                       shape(),strides(),index_bases());
@@ -297,7 +297,7 @@
   template <typename ConstMultiArray>
   multi_array_view& operator=(const ConstMultiArray& other) {
     function_requires<
- boost::detail::multi_array::
+ boost::multi_array_concepts::
       ConstMultiArrayConcept<ConstMultiArray,NumDims> >();
 
     // make sure the dimensions agree
@@ -328,7 +328,7 @@
   template <class IndexList>
   element& operator()(const IndexList& indices) {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::access_element(boost::type<element&>(),
                                       indices,origin(),
                                       this->shape(),this->strides(),
@@ -392,7 +392,7 @@
   template <class IndexList>
   const element& operator()(const IndexList& indices) const {
     boost::function_requires<
- detail::multi_array::CollectionConcept<IndexList> >();
+ CollectionConcept<IndexList> >();
     return super_type::operator()(indices);
   }
 

Modified: branches/release/libs/concept_check/reference.htm
==============================================================================
--- branches/release/libs/concept_check/reference.htm (original)
+++ branches/release/libs/concept_check/reference.htm 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -279,6 +279,10 @@
 template &lt;class C&gt;
 struct <a href=
 "http://www.sgi.com/tech/stl/SortedAssociativeContainer.html">SortedAssociativeContainer</a>;
+
+template &lt;class C&gt;
+struct <a href=
+"../utility/Collection.html">Collection</a>;
 </pre>
 
   <h3><a name="basic-archetype" id="basic-archetype">Basic Archetype

Modified: branches/release/libs/multi_array/doc/xml/MultiArray.xml
==============================================================================
--- branches/release/libs/multi_array/doc/xml/MultiArray.xml (original)
+++ branches/release/libs/multi_array/doc/xml/MultiArray.xml 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -110,6 +110,14 @@
 column are stored contiguously).
 </para>
 
+<para>
+Two concept checking classes for the MultiArray concepts
+(<literal>ConstMultiArrayConcept</literal> and
+<literal>MutableMultiArrayConcept</literal>) are in the namespace
+<literal>boost::multi_array_concepts</literal> in
+<literal>&lt;boost/multi_array/concept_checks.hpp&gt;</literal>.
+</para>
+
 
 <sect2><title>Notation</title>
 <para>What follows are the descriptions of symbols that will be used

Copied: branches/release/libs/multi_array/example/resize_from_other.cpp (from r47768, /trunk/libs/multi_array/example/resize_from_other.cpp)
==============================================================================
--- /trunk/libs/multi_array/example/resize_from_other.cpp (original)
+++ branches/release/libs/multi_array/example/resize_from_other.cpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -26,7 +26,7 @@
 
   // U must be a model of MultiArray
   boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<U,U::dimensionality> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<U,U::dimensionality> >();
   // U better have U::dimensionality == N
   BOOST_STATIC_ASSERT(U::dimensionality == N);
 

Modified: branches/release/libs/multi_array/test/concept_checks.cpp
==============================================================================
--- branches/release/libs/multi_array/test/concept_checks.cpp (original)
+++ branches/release/libs/multi_array/test/concept_checks.cpp 2010-10-05 14:15:27 EDT (Tue, 05 Oct 2010)
@@ -38,28 +38,28 @@
   typedef array::const_subarray<ndims>::type const_subarray;
 
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<array,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<array,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<array_ref,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<array_ref,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<const_array_ref,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<const_array_ref,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<array_view,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<array_view,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<const_array_view,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<const_array_view,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<subarray,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<subarray,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::ConstMultiArrayConcept<const_subarray,ndims> >();
+ boost::multi_array_concepts::ConstMultiArrayConcept<const_subarray,ndims> >();
 
 boost::function_requires<
- boost::detail::multi_array::MutableMultiArrayConcept<array,ndims> >();
+ boost::multi_array_concepts::MutableMultiArrayConcept<array,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::MutableMultiArrayConcept<array_ref,ndims> >();
+ boost::multi_array_concepts::MutableMultiArrayConcept<array_ref,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::MutableMultiArrayConcept<array_view,ndims> >();
+ boost::multi_array_concepts::MutableMultiArrayConcept<array_view,ndims> >();
 boost::function_requires<
- boost::detail::multi_array::MutableMultiArrayConcept<subarray,ndims> >();
+ boost::multi_array_concepts::MutableMultiArrayConcept<subarray,ndims> >();
 
   return 0;
 }


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk