Jan Engelhardt
e867977543
scripts: resolve strict aliasing violations in level DLLs
...
$GIT/scripts/LEVEL15.cpp: In function ‘void aMatCenPuzzleInit()’:
$GIT/scripts/LEVEL15.cpp:833:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
833 | #define MagicMatCenSwitchSequence (*((int *)(&User_vars[17])))
$GIT/scripts/LEVEL15.cpp:834:25: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
834 | #define MatCenStateA (*((int *)(&User_vars[0])))
...
$GIT/scripts/Level6.cpp: In function ‘void aPriestKeyEnter(int)’:
$GIT/scripts/Level6.cpp:910:47: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
910 | #define Var_ThereIsPlayerInPriestKeyPuzzle (*((int *)(&User_vars[7])))
Turn ``User_var`` into an array of std::variant, the latter of which can hold
either float or int. Savegames do not carry the necessary type information
which variant (float/int) is in use; instead, this is statically decided by
the level DLL logic on a per-index basis. This approach is retained for now.
A lot of ``Var_something = 0`` is used despite Var_something being
logically used as float, so we need to override op= to keep the
variant type as-is.
2024-09-09 15:42:00 +02:00
..
2024-09-03 13:26:51 +02:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-05-30 03:35:17 -04:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-03 13:26:51 +02:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:42:00 +02:00
2024-09-09 15:42:00 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-03 13:26:51 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:42:00 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-09-03 13:26:51 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:42:00 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-08-31 12:13:44 +02:00
2024-08-20 23:09:27 +03:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-09-03 13:26:51 +02:00
2024-09-09 15:29:38 +02:00
2024-09-09 15:29:38 +02:00
2024-09-09 14:57:44 +02:00
2024-09-09 14:57:44 +02:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-05-30 03:35:17 -04:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00
2024-09-09 15:29:40 +02:00
2024-04-15 21:43:29 -06:00