Boost logo

Boost Users :

From: Martin (adrianm_at_[hidden])
Date: 2005-08-18 01:52:46


I have a project that uses the fixed_string library (which is still in the
review que).

This library worked fine with string_algo in boost 1.32 but not with boost
1.33. I traced the problem to be the following

template <typename StringT>
struct C {
  typedef range_result_iterator<StringT>::type range_iterator_type;
  typedef StringT::iterator iterator_type;
  BOOST_STATIC_ASSERT((is_same<range_iterator_type, iterator_type>::value));
  int dummy;
};

main() {
  C<std::string> a; // ok
  C<array<char, 5> > b; // ok
  C<const_string<> > c; // ok
  C<vector<char> > d; // ok
  C<fixed_string<10> > e; // static assert
}

Didn't find any obvious reason in any of the libraries involved. Is it a
problem with the VC70 compiler?

(Also noticed that the range library copied a lot from the string_algo library
e.g. BOOST_STRING_TYPENAME and code layout. Doesn't matter but it confused me
sometimes about what library source I was looking at)


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