From cf411515346886587b86fa72fd44ebcc8e6cd02b Mon Sep 17 00:00:00 2001 From: Recep Aslantas Date: Sat, 14 Sep 2019 16:18:45 +0300 Subject: [PATCH] Update troubleshooting.rst --- docs/source/troubleshooting.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/source/troubleshooting.rst b/docs/source/troubleshooting.rst index e4cea9f..ad6a009 100644 --- a/docs/source/troubleshooting.rst +++ b/docs/source/troubleshooting.rst @@ -57,6 +57,13 @@ For instance you may called **glm_vec4_** functions for **vec3** data type. It will try to write 32 byte but since **vec3** is 24 byte it should throw memory access error or exit the app without saying anything. +**UPDATE - IMPORTANT:** + + | On MSVC or some other compilers, if alignment is enabled (default) then double check alignment requirements if you got a crash. + + | If you send GLM_VEC4_ONE or similar macros directly to a function, it may be crashed. + | Because compiler may not apply alignment as defined on **typedef** to that macro while passing it (on stack) to a function. + Wrong Results: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~