[Scummvm-cvs-logs] SF.net SVN: scummvm:[45697] scummvm/trunk/common/serializer.h

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Fri Nov 6 18:21:43 CET 2009


Revision: 45697
          http://scummvm.svn.sourceforge.net/scummvm/?rev=45697&view=rev
Author:   lordhoto
Date:     2009-11-06 17:21:43 +0000 (Fri, 06 Nov 2009)

Log Message:
-----------
Commit digitall's patch for bugs #2892510 and #2892510 with an additional comment.

Modified Paths:
--------------
    scummvm/trunk/common/serializer.h

Modified: scummvm/trunk/common/serializer.h
===================================================================
--- scummvm/trunk/common/serializer.h	2009-11-06 17:00:29 UTC (rev 45696)
+++ scummvm/trunk/common/serializer.h	2009-11-06 17:21:43 UTC (rev 45697)
@@ -88,6 +88,26 @@
 	inline bool isSaving() { return (_saveStream != 0); }
 	inline bool isLoading() { return (_loadStream != 0); }
 
+	// WORKAROUND for bugs #2892515 "BeOS: tinsel does not compile" and
+	// #2892510 "BeOS: Cruise does not compile". gcc 2.95.3, which is used
+	// for BeOS fails due to an internal compiler error, when we place the
+	// following function definitions in another place. Before this work-
+	// around the following SYNC_AS definitions were placed at the end
+	// of the class declaration. This caused an internal compiler error
+	// in the line "syncAsUint32LE(_version);" of
+	// "bool syncVersion(Version currentVersion)".
+	SYNC_AS(Byte, byte, 1)
+
+	SYNC_AS(Uint16LE, uint16, 2)
+	SYNC_AS(Uint16BE, uint16, 2)
+	SYNC_AS(Sint16LE, int16, 2)
+	SYNC_AS(Sint16BE, int16, 2)
+
+	SYNC_AS(Uint32LE, uint32, 4)
+	SYNC_AS(Uint32BE, uint32, 4)
+	SYNC_AS(Sint32LE, int32, 4)
+	SYNC_AS(Sint32BE, int32, 4)
+
 	/**
 	 * Returns true if an I/O failure occurred.
 	 * This flag is never cleared automatically. In order to clear it,
@@ -216,17 +236,6 @@
 		}
 	}
 
-	SYNC_AS(Byte, byte, 1)
-
-	SYNC_AS(Uint16LE, uint16, 2)
-	SYNC_AS(Uint16BE, uint16, 2)
-	SYNC_AS(Sint16LE, int16, 2)
-	SYNC_AS(Sint16BE, int16, 2)
-
-	SYNC_AS(Uint32LE, uint32, 4)
-	SYNC_AS(Uint32BE, uint32, 4)
-	SYNC_AS(Sint32LE, int32, 4)
-	SYNC_AS(Sint32BE, int32, 4)
 };
 
 #undef SYNC_AS


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list