diff options
author | dhewg | 2011-04-17 12:27:04 +0200 |
---|---|---|
committer | dhewg | 2011-04-17 12:31:59 +0200 |
commit | 9363e19667d5b4c7af2237bc6f22a636fed1dc0f (patch) | |
tree | 43242944beae1071a2d0665c7642d8137e069a7e /engines | |
parent | 85adc95f79b97c179d82291b670acf11ccf1b60c (diff) | |
download | scummvm-rg350-9363e19667d5b4c7af2237bc6f22a636fed1dc0f.tar.gz scummvm-rg350-9363e19667d5b4c7af2237bc6f22a636fed1dc0f.tar.bz2 scummvm-rg350-9363e19667d5b4c7af2237bc6f22a636fed1dc0f.zip |
TSAGE: Suppress strict-alias warnings on older GCCs
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tsage/saveload.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/tsage/saveload.h b/engines/tsage/saveload.h index 83661b8f15..945d144ae5 100644 --- a/engines/tsage/saveload.h +++ b/engines/tsage/saveload.h @@ -51,7 +51,13 @@ struct tSageSavegameHeader { /*--------------------------------------------------------------------------*/ -#define SYNC_POINTER(x) s.syncPointer((SavedObject **)&x) +// FIXME: workaround to supress spurious strict-alias warnings on older GCC +// versions. this should be resolved with the savegame rewrite +#define SYNC_POINTER(x) do { \ + SavedObject *y = (SavedObject *)x; \ + s.syncPointer(&y); \ +} while (false) + #define SYNC_ENUM(FIELD, TYPE) int v_##FIELD = (int)FIELD; s.syncAsUint16LE(v_##FIELD); \ if (s.isLoading()) FIELD = (TYPE)v_##FIELD; |