Joel de Guzman writes:
Builds fine with me using both VC2010 and g++.
After I just include this:
#include
I am getting this from express edition:
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(261):
error C2146: syntax error : missing ',' before identifier 'push_back'
1>
...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(279) :
see reference to class template instantiation
'boost::fusion::detail::make_segment_sequence_back' being compiled
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(261):
error C2065: 'push_back' : undeclared identifier
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(262):
error C2275:
'boost::fusion::detail::make_segment_sequence_back::rest_type' :
illegal use of this type as an expression
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(262):
error C2143: syntax error : missing ',' before 'const'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(265):
warning C4517: access-declarations are deprecated; member using-declarations
provide a better alternative
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(265):
warning C4346:
'boost::fusion::detail::segment_sequence::type>::type'
: dependent name is not a type
1> prefix with 'typename' to indicate a type
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(265):
error C2143: syntax error : missing ';' before '>'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(266):
error C2238: unexpected token(s) preceding ';'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(268):
error C2146: syntax error : missing ';' before identifier 'call'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(268):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(268):
error C2086:
'segment_sequenceStack::cdr_type::type>::type type'
: redefinition
1>
...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(265) :
see declaration of
'boost::fusion::detail::make_segment_sequence_back::operator type'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(268):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(269):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(278):
warning C4183: 'call': missing return type; assumed to be a member function
returning 'int'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(394):
error C2146: syntax error : missing ',' before identifier 'push_back'
1>
...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(421) :
see reference to class template instantiation
'boost::fusion::detail::make_segmented_range_reduce2'
being compiled
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(394):
error C2065: 'push_back' : undeclared identifier
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(399):
warning C4346: 'Stack::size::value' : dependent name is not a type
1> prefix with 'typename' to indicate a type
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(399):
error C2226: syntax error : unexpected type
'boost::fusion::result_of::push_frontStackBegin::car_type::begin_type
::type,StackEnd::car_type::begin_type>,make_segment_sequence_front<StackBegin>
::type>::type'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(401):
warning C4517: access-declarations are deprecated; member using-declarations
provide a better alternative
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(401):
warning C4346:
'boost::fusion::detail::segment_sequence::type'
: dependent name is not a type
1> prefix with 'typename' to indicate a type
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(401):
error C2143: syntax error : missing ';' before '>'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(402):
error C2238: unexpected token(s) preceding ';'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(404):
error C2146: syntax error : missing ';' before identifier 'call'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(404):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(404):
error C2086: 'segment_sequence::type
type' : redefinition
1>
...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(401) :
see declaration of
'boost::fusion::detail::
make_segmented_range_reduce2::operator type'
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(404):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(405):
error C4430: missing type specifier - int assumed. Note: C++ does not support
default-int
1>...\boost\fusion\view\iterator_range\detail\segmented_iterator_range.hpp(420):
warning C4183: 'call': missing return type; assumed to be a member function
returning 'int'
What about original question BTW? Do you have a suggestion?
Gennadiy