Boost logo

Boost Users :

Subject: [Boost-users] Boost iostreams and ios_state
From: Damien Kick (dkick1_at_[hidden])
Date: 2010-11-29 12:58:16


I'm trying to compile the following with VS 2005 and Boost 1.40.0 but it isn't
compiling for me. Should it? Any suggestions for getting this to work?

Here is the jist of what I'm trying to do:

#include <boost/io/ios_state.hpp>
#include <boost/iostreams/device/array.hpp>
#include <boost/iostreams/stream.hpp>
#include <boost/cstdint.hpp>
#include <boost/scoped_array.hpp>

int main()
{
  typedef boost::iostreams::basic_array<boost::uint8_t> Uint8Array;
  typedef boost::iostreams::stream<Uint8Array> Stream;

  boost::scoped_array<boost::uint8_t> buffer(new boost::uint8_t[1]);
  Stream stream(buffer.get(), 1);
  boost::io::ios_all_saver ias(stream);
}

And here is the compilation error:

error C2664: 'boost::io::basic_ios_all_saver<Ch>::basic_ios_all_saver
(std::basic_ios<_Elem,_Traits> &)' : cannot convert parameter 1 from 'Stream'
to 'std::basic_ios<_Elem,_Traits> &'
        with
        [
            Ch=char,
            _Elem=char,
            _Traits=std::char_traits<char>
        ]
        and
        [
            _Elem=char,
            _Traits=std::char_traits<char>
        ]


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