
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 <boost/iostreams/device/file.hpp> # include <boost/iostreams/get.hpp> 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_impl<boost::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_impl<boost::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_impl<boost::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_impl<boost::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 */