--- libsidplay-1.36.59.orig/acinclude.m4
+++ libsidplay-1.36.59/acinclude.m4
@@ -75,8 +75,10 @@
     [
         AC_TRY_COMPILE(
             [
-#include <iostream.h>
-#include <fstream.h>
+#include <iostream>
+#include <fstream>
+
+using namespace std;
             ],
 		    [
 ifstream myTest("test",ios::in|ios::binary);
--- libsidplay-1.36.59.orig/configure
+++ libsidplay-1.36.59/configure
@@ -2869,13 +2869,15 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 
-#include <iostream.h>
-#include <fstream.h>
+#include <iostream>
+#include <fstream>
 
 int
 main ()
 {
 
+using namespace std;
+
 ifstream myTest("test",ios::in|ios::binary);
 
   ;
--- libsidplay-1.36.59.orig/src/pp_.cpp
+++ libsidplay-1.36.59/src/pp_.cpp
@@ -40,6 +40,8 @@
 static bool isCompressed;
 static bool globalError;
 
+using namespace std;
+
 
 // Move four bytes to Motorola big-endian double-word.
 static inline void bytesTOudword()
--- libsidplay-1.36.59.orig/src/sidtune.cpp
+++ libsidplay-1.36.59/src/sidtune.cpp
@@ -35,6 +35,8 @@
 #include "myendian.h"
 #include "pp.h"
 
+using namespace std;
+
 
 const char text_songNumberExceed[] = "WARNING: Selected song number was too high";
 const char text_emptyFile[] = "ERROR: File is empty";
@@ -307,9 +309,9 @@
     }
     // Open binary input file stream at end of file.
 #if defined(SID_HAVE_IOS_BIN)
-	ifstream myIn( fileName, ios::in|ios::bin|ios::ate );
+	ifstream myIn( fileName, ios::in|ios::bin );
 #else
-	ifstream myIn( fileName, ios::in|ios::binary|ios::ate );
+	ifstream myIn( fileName, ios::in|ios::binary );
 #endif
 	// As a replacement for !is_open(), bad() and the NOT-operator
     // don't seem to work on all systems.
--- libsidplay-1.36.59.orig/src/smart.h
+++ libsidplay-1.36.59/src/smart.h
@@ -17,16 +17,16 @@
         doFree = bufOwner;
         if ( bufferLen >= 1 )
         {
-            pBufCurrent = ( bufBegin = buffer );
-            bufEnd = bufBegin + bufferLen;
-            bufLen = bufferLen;
-            status = true;
+            this->pBufCurrent = ( this->bufBegin = buffer );
+            this->bufEnd = this->bufBegin + bufferLen;
+            this->bufLen = bufferLen;
+            this->status = true;
         }
         else
         {
-            pBufCurrent = ( bufBegin = ( bufEnd = 0 ));
-            bufLen = 0;
-            status = false;
+            this->pBufCurrent = ( this->bufBegin = ( this->bufEnd = 0 ));
+            this->bufLen = 0;
+            this->status = false;
         }
     }