Index: trunk/src/io/c_stream.cc
===================================================================
--- trunk/src/io/c_stream.cc	(revision 138)
+++ trunk/src/io/c_stream.cc	(revision 198)
@@ -46,5 +46,5 @@
 }
 
-bool c_stream::seek( size_t offset, origin orig )
+bool c_stream::seek( long offset, origin orig )
 {
 	return m_file != nullptr && ( ::fseek( (FILE*)m_file, (long)offset, static_cast<int>(orig) ) == 0 );
@@ -53,5 +53,5 @@
 size_t c_stream::tell()
 {
-	return m_file != nullptr ? ::ftell( (FILE*)m_file ) : 0;
+	return m_file != nullptr ? static_cast< size_t >( ::ftell( (FILE*)m_file ) ) : 0;
 }
 
Index: trunk/src/io/std_stream.cc
===================================================================
--- trunk/src/io/std_stream.cc	(revision 138)
+++ trunk/src/io/std_stream.cc	(revision 198)
@@ -15,6 +15,6 @@
 	: m_stream( source )
 	, m_owner( owner )
+	, m_buffer( std::max(bsize, put_back) + put_back )
 	, m_put_back( std::max( put_back, std::size_t( 1 ) ) )
-	, m_buffer( std::max(bsize, put_back) + put_back )
 {
 	char *end = &m_buffer.front() + m_buffer.size();
@@ -49,5 +49,5 @@
 
 	// start is now the start of the buffer, proper.
-	size_t n = m_stream->read( start, 1, m_buffer.size() - (start - base) );
+	size_t n = m_stream->read( start, 1, m_buffer.size() - static_cast<size_t>(start - base) );
 	if (n == 0)
 	{
