Re: [Boost-bugs] [Boost C++ Libraries] #13368: consuming_buffers.hpp: parse error in template argument list

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #13368: consuming_buffers.hpp: parse error in template argument list
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2018-01-04 19:45:09


#13368: consuming_buffers.hpp: parse error in template argument list
-------------------------------+----------------------------
  Reporter: anonymous | Owner: chris_kohlhoff
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: asio
   Version: Boost 1.66.0 | Severity: Regression
Resolution: | Keywords:
-------------------------------+----------------------------

Comment (by Anton Kryukov <akryukov@…>):

 I am having the same problem using gcc 4.8.4 on 14.04.1-Ubuntu. I
 installed boost 1.66 in a separate directory next to the previously
 installed boost 1.57 and pointed to it using environment variables. I
 recreated our build tree using CMake in a pristine directory and got this
 error:
 ---------------------------------------------------------
 In file included from .../boost_1_66_0/boost/asio/impl/write.hpp:25:0,

                  from .../boost_1_66_0/boost/asio/write.hpp:927,

                  from
 .../boost_1_66_0/boost/asio/buffered_write_stream.hpp:29,

                  from .../boost_1_66_0/boost/asio/buffered_stream.hpp:22,

                  from .../boost_1_66_0/boost/asio.hpp:41,

                  from .../.../stdafx.h:39,

                  from .../.../xxx.cpp:1:

 .../boost_1_66_0/boost/asio/detail/consuming_buffers.hpp: In member
 function ‘boost::asio::detail::consuming_buffers<Buffer, Buffers,
 Buffer_Iterator>::prepared_buffers_type
 boost::asio::detail::consuming_buffers<Buffer, Buffers,
 Buffer_Iterator>::prepare(std::size_t)’:

 .../boost_1_66_0/boost/asio/detail/consuming_buffers.hpp:105:50: error:
 parse error in template argument list
      while (next != end && max_size > 0 && result.count <
 result.max_buffers)
                                                   ^
 ----------------------------------------------------------
 In the stdafx.h file asio.hpp was #included after a bunch of other boost
 headers (and nothing else):

  #include <boost/noncopyable.hpp>

  #include <boost/function.hpp>

  #include <boost/format.hpp>

  #include <boost/shared_ptr.hpp>

  #include <boost/scoped_ptr.hpp>

  #include <boost/foreach.hpp>

  #include <boost/bind.hpp>

  #include <boost/serialization/strong_typedef.hpp>

  #include <boost/range/algorithm.hpp>

  #include <boost/algorithm/string/predicate.hpp>

  #include <boost/lexical_cast.hpp>

  #include <boost/intrusive_ptr.hpp>

  #include <boost/variant.hpp>

  #include <boost/asio.hpp>

 When I moved #include <boost/asio.hpp> to the front, the problem went
 away. Visual C++ 14.1 did not have this problem.

-- 
Ticket URL: <https://svn.boost.org/trac10/boost/ticket/13368#comment:3>
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 : 2018-01-04 19:50:27 UTC