diff options
author | Johannes Schickel | 2009-11-06 17:21:43 +0000 |
---|---|---|
committer | Johannes Schickel | 2009-11-06 17:21:43 +0000 |
commit | d66e284bde397476075990303455fb0da4a1c3cb (patch) | |
tree | dd752a7c4ef3f831b81e267dd6905b98aac2a5dc /common | |
parent | 881bf37554b1d33b3c77bf7a6718b98c7766fd83 (diff) | |
download | scummvm-rg350-d66e284bde397476075990303455fb0da4a1c3cb.tar.gz scummvm-rg350-d66e284bde397476075990303455fb0da4a1c3cb.tar.bz2 scummvm-rg350-d66e284bde397476075990303455fb0da4a1c3cb.zip |
Commit digitall's patch for bugs #2892510 and #2892510 with an additional comment.
svn-id: r45697
Diffstat (limited to 'common')
-rw-r--r-- | common/serializer.h | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/common/serializer.h b/common/serializer.h index 78ea39424f..b8c62727d4 100644 --- a/common/serializer.h +++ b/common/serializer.h @@ -88,6 +88,26 @@ public: 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 @@ public: } } - 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 |