Boost logo

Boost :

From: Miro Jurisic (macdev_at_[hidden])
Date: 2004-04-18 02:35:46


I am trying to play with Serialization #18 on CodeWarrior 9, and I ran into the
following problems:

mbstate_t is not in the global namespace when using CW9 and MW STL (I didn't
test with gcc STL). This caused compile errors in archive/codecvt_null.hpp. I
altered the workaround already present for Borland, but I believe this is the
wrong answer, because it puts a using declaration in a header file.

Inside iterator_facade, I had to change:

      Derived const& derived() const
      {
          return static_cast<Derived const&>(*this);
      }

to
      Derived const& derived() const
      {
          return *static_cast<Derived const*>(this);
      }

Without that change, CW gives a warning saying that the function returns a
reference to an automatic variable. I am pretty sure the warning is wrong, but
this change silenced it, and I don't have the time to read over the spec to find
out if the warning is correct or not.

That leaves me with the following two errors in compiling text_oarchive.cpp... I
am not sure what to do about these two errors, but I am too tired to stare at
them right now, so I am posting them here in hope that someone can make sense
out of them... the second error in particular makes no sense to me at all.

meeroh

Error : illegal explicit conversion from
'boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost::archi
ve::iterators::base64_from_binary<boost::archive::iterators::transform_width<cons
t char *, 6, 8, char>, char>, 72, char>, char, boost::single_pass_traversal_tag,
char, char>' to
'const char *'
 (instantiating: 'boost::archive::basic_text_oprimitive<std::basic_ostream<char,
std::char_traits<char>>>::save_binary(const void *, unsigned long)')
  (instantiating:
'std::copy<boost::archive::iterators::insert_linebreaks<boost::archive::iterators
::base64_from_binary<boost::archive::iterators::transform_width<const char *, 6,
8, char>, char>, 72, char>,
boost::archive::iterators::ostream_iterator<char>>(boost::archive::iterators::ins
ert_linebreaks<boost::archive::iterators::base64_from_binary<boost::archive::iter
ators::transform_width<const char *, 6, 8, char>, char>, 72, char>,
boost::archive::iterators::insert_linebreaks<boost::archive::iterators::base64_fr
om_binary<boost::archive::iterators::transform_width<const char *, 6, 8, char>,
char>, 72, char>, boost::archive::iterators::ostream_iterator<char>)')
   (instantiating:
'boost::operator!=<boost::archive::iterators::insert_linebreaks<boost::archive::i
terators::base64_from_binary<boost::archive::iterators::transform_width<const
char *, 6, 8, char>, char>, 72, char>, char, boost::single_pass_traversal_tag,
char, char,
boost::archive::iterators::insert_linebreaks<boost::archive::iterators::base64_fr
om_binary<boost::archive::iterators::transform_width<const char *, 6, 8, char>,
char>, 72, char>, char, boost::single_pass_traversal_tag, char, char>(const
boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost::archiv
e::iterators::base64_from_binary<boost::archive::iterators::transform_width<const
 char *, 6, 8, char>, char>, 72, char>, char, boost::single_pass_traversal_tag,
char, char> &, const
boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost::archiv
e::iterators::base64_from_binary<boost::archive::iterators::transform_width<const
 char *, 6, 8, char>, char>, 72, char>, char, boost::single_pass_traversal_tag,
char, char> &)')
    (instantiating:
'boost::archive::iterators::insert_linebreaks<boost::archive::iterators::base64_f
rom_binary<boost::archive::iterators::transform_width<const char *, 6, 8, char>,
char>, 72,
char>::insert_linebreaks<boost::iterator_facade<boost::archive::iterators::insert
_linebreaks<boost::archive::iterators::base64_from_binary<boost::archive::iterato
rs::transform_width<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char,
char>>(boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost:
:archive::iterators::base64_from_binary<boost::archive::iterators::transform_widt
h<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char, char>)')
     (instantiating:
'boost::archive::iterators::base64_from_binary<boost::archive::iterators::transfo
rm_width<const char *, 6, 8, char>,
char>::base64_from_binary<boost::iterator_facade<boost::archive::iterators::inser
t_linebreaks<boost::archive::iterators::base64_from_binary<boost::archive::iterat
ors::transform_width<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char,
char>>(boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost:
:archive::iterators::base64_from_binary<boost::archive::iterators::transform_widt
h<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char, char>)')
      (instantiating: 'boost::archive::iterators::transform_width<const char *,
6, 8,
char>::transform_width<boost::iterator_facade<boost::archive::iterators::insert_l
inebreaks<boost::archive::iterators::base64_from_binary<boost::archive::iterators
::transform_width<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char,
char>>(boost::iterator_facade<boost::archive::iterators::insert_linebreaks<boost:
:archive::iterators::base64_from_binary<boost::archive::iterators::transform_widt
h<const char *, 6, 8, char>, char>, 72, char>, char,
boost::single_pass_traversal_tag, char, char>)')
transform_width.hpp line 105
super_t(Base(BOOST_MAKE_PFTO_WRAPPER(static_cast<T>(start)))),

Error : object
'boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::text_oarchive
_impl `base constructor'(std::basic_ostream<char, std::char_traits<char>> &,
unsigned int)' redefined
 (instantiating:
'boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::text_oarchive
_impl `base constructor'(std::basic_ostream<char, std::char_traits<char>> &,
unsigned int)')
text_oarchive.hpp line 61 text_oarchive_impl(std::ostream & os, unsigned
int flags = 0) :

-- 
If this message helped you, consider buying an item
from my wish list: <http://web.meeroh.org/wishlist>

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk