diff --git a/src/engine/function.cpp b/src/engine/function.cpp index ca7010c65..51349a9aa 100644 --- a/src/engine/function.cpp +++ b/src/engine/function.cpp @@ -378,8 +378,9 @@ struct _stack template struct advance_size { - static const std::ptrdiff_t value - = std::ptrdiff_t( reinterpret_cast*>(0) + 1 ); + struct _helper_1 { remove_cref_t a; }; + struct _helper_2 { remove_cref_t a; remove_cref_t b; }; + static const std::ptrdiff_t value = sizeof(_helper_2) - sizeof(_helper_1); }; template