Re: [Boost-bugs] [Boost C++ Libraries] #4874: multi_array compile errors using Visual C++ 2010 in debug mode

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4874: multi_array compile errors using Visual C++ 2010 in debug mode
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-04-12 17:33:47


#4874: multi_array compile errors using Visual C++ 2010 in debug mode
-------------------------------+--------------------------------------------
  Reporter: chrislu | Owner: garcia
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: multi_array
   Version: Boost 1.47.0 | Severity: Showstopper
Resolution: | Keywords: multi_array, Visual Studio 2010, Visual C++ 2010
-------------------------------+--------------------------------------------

Comment (by bill_buklis):

 First let's make sure that you have the right version of the multi_array
 headers (located in the boost/multi_array folder). There are only three
 files that are different from the regular release:
 * base.hpp
 * concept_checks.hpp
 * iterator.hpp

 In base.hpp:

 On line 84 where it defines array_iterator you should see an additional
 template parameter for !IteratorCategory that is not in the general
 release. There are other differences as well, but this is a tell-tale
 sign.

 In concept_checks.hpp:

 At line 134 there is an additional line in the !MutableMultiArrayConcept
 struct definition that is not in the general release. This is the only
 difference.
 {{{
       function_requires< boost::OutputIterator<iterator,value_type> >();
 }}}

 In iterator.hpp:

 Near the beginning just after the definition of operator_arrow_proxy is a
 declaration for array_iterator. Just like in base.hpp there is an
 additional template parameter for !IteratorCategory that is not in the
 general release.

 Without these updated files simply calling resize will generate the
 _Copy_impl error. With these files, I do not get the error.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4874#comment:28>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:09 UTC