Hi,
I'm having some trouble using boost::iostreams::basic_file (and other
devices) with unsigned char character types. It's likely a lack of
understanding on my part, so any help is greatly appreciated. Here is
what I'd like to do, and the results from my g++ v4.5.0 compilation.
Thanks for your time.
# include
# include
int main()
{
namespace io = boost::iostreams;
io::basic_file_source< unsigned char > file( "us.cpp" );
int ch = io::get( file );
return 0;
}
/*
In file included from d:/boost_1_45_0/boost/iostreams/detail/adapter/non_blockin
g_adapter.hpp:12:0,
from d:/boost_1_45_0/boost/iostreams/close.hpp:19,
from d:/boost_1_45_0/boost/iostreams/operations.hpp:16,
from d:/boost_1_45_0/boost/iostreams/device/file.hpp:23,
from us.cpp:1:
d:/boost_1_45_0/boost/iostreams/read.hpp: In static member function 'static type
name boost::iostreams::int_type_of<T>::type boost::iostreams::detail::read_devic
e_implboost::iostreams::input::get(T&) [with T = boost::iostreams::basic_file_
source<unsigned char>, typename boost::iostreams::int_type_of<T>::type = long un
signed int]':
d:/boost_1_45_0/boost/iostreams/read.hpp:47:60: instantiated from 'typename bo
ost::iostreams::int_type_of<T>::type boost::iostreams::get(T&) [with T = boost::
iostreams::basic_file_source<unsigned char>, typename boost::iostreams::int_type
_of<T>::type = long unsigned int]'
us.cpp:10:28: instantiated from here
d:/boost_1_45_0/boost/iostreams/read.hpp:180:42: error: incomplete type 'boost::
iostreams::detail::read_device_implboost::iostreams::input::get(T&) [with T =
boost::iostreams::basic_file_source<unsigned char>, typename boost::iostreams::i
nt_type_of<T>::type = long unsigned int]::traits_type' used in nested name speci
fier
d:/boost_1_45_0/boost/iostreams/read.hpp:180:42: error: incomplete type 'boost::
iostreams::detail::read_device_implboost::iostreams::input::get(T&) [with T =
boost::iostreams::basic_file_source<unsigned char>, typename boost::iostreams::i
nt_type_of<T>::type = long unsigned int]::traits_type' used in nested name speci
fier
d:/boost_1_45_0/boost/iostreams/read.hpp:180:42: error: incomplete type 'boost::
iostreams::detail::read_device_implboost::iostreams::input::get(T&) [with T =
boost::iostreams::basic_file_source<unsigned char>, typename boost::iostreams::i
nt_type_of<T>::type = long unsigned int]::traits_type' used in nested name speci
fier
*/