iterator_adaptors on Tru64 version V6.1-027
Hi all, I'm trying to use the iterator_adaptors class on Tru64. To make it work I had to do the following changes: In concept_check.hpp I had to change the code from this: template <class Concept> inline void function_requires() { #if !defined(NDEBUG) void (Concept::*x)() = BOOST_FPTR Concept::constraints; ignore_unused_variable_warning(x); #endif } to this: template <class Concept> inline void function_requires(type<Concept> t = type<Concept>()) { #if !defined(NDEBUG) void (Concept::*x)() = BOOST_FPTR Concept::constraints; ignore_unused_variable_warning(x); #endif } because this compiler generates an error if a template parameter is not used in the function declaration. In iterator_adaptors.hpp I had to remove the parenthesis around all the if_true bool template parameter from this: typedef typename if_true<( // original version ::boost::is_same<Value,typename iterator_traits<Iterator>::value_type>::value )>::template then< typename iterator_traits<Iterator>::pointer, Value* >::type pointer; to this: typedef typename if_true< // Changed version no parenthesis ::boost::is_same<Value,typename iterator_traits<Iterator>::value_type>::value >::template then< typename iterator_traits<Iterator>::pointer, Value* >::type pointer; It is possible to put this changes in the original distribution in order to avoid to put this changes in any new boost release I use ? Thanks for your help Vincenzo
participants (1)
-
vvasta