|
Boost Users : |
From: vvasta (vvasta_at_[hidden])
Date: 2002-01-02 10:52:15
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
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net