diff --git a/Generals/Code/GameEngine/Include/Common/GlobalData.h b/Generals/Code/GameEngine/Include/Common/GlobalData.h index dbf1330340..4d06757f7f 100644 --- a/Generals/Code/GameEngine/Include/Common/GlobalData.h +++ b/Generals/Code/GameEngine/Include/Common/GlobalData.h @@ -560,6 +560,11 @@ class GlobalData : public SubsystemInterface // singleton extern GlobalData* TheWritableGlobalData; +// use TheGlobalData for all read-only accesses +#if __cplusplus >= 201703L +inline const GlobalData* const& TheGlobalData = TheWritableGlobalData; +#else #define TheGlobalData ((const GlobalData*)TheWritableGlobalData) +#endif #endif diff --git a/GeneralsMD/Code/GameEngine/Include/Common/GlobalData.h b/GeneralsMD/Code/GameEngine/Include/Common/GlobalData.h index 9dc544d9b2..fba180d123 100644 --- a/GeneralsMD/Code/GameEngine/Include/Common/GlobalData.h +++ b/GeneralsMD/Code/GameEngine/Include/Common/GlobalData.h @@ -573,6 +573,11 @@ class GlobalData : public SubsystemInterface // singleton extern GlobalData* TheWritableGlobalData; +// use TheGlobalData for all read-only accesses +#if __cplusplus >= 201703L +inline const GlobalData* const& TheGlobalData = TheWritableGlobalData; +#else #define TheGlobalData ((const GlobalData*)TheWritableGlobalData) +#endif #endif