[Bf-blender-cvs] [495a98d6236] master: BLI_assert: prevent abort from suppressing return-type warning
Campbell Barton
noreply at git.blender.org
Tue May 26 05:41:11 CEST 2020
Commit: 495a98d623648ca787ddb2c0dbaa08fe313f1adf
Author: Campbell Barton
Date: Tue May 26 13:37:52 2020 +1000
Branches: master
https://developer.blender.org/rB495a98d623648ca787ddb2c0dbaa08fe313f1adf
BLI_assert: prevent abort from suppressing return-type warning
Recent commit deaff945d0b96 broke release builds but not debug builds,
with this change the warning happens in both cases.
===================================================================
M source/blender/blenlib/BLI_assert.h
===================================================================
diff --git a/source/blender/blenlib/BLI_assert.h b/source/blender/blenlib/BLI_assert.h
index b9cb32a310e..603be115b35 100644
--- a/source/blender/blenlib/BLI_assert.h
+++ b/source/blender/blenlib/BLI_assert.h
@@ -69,7 +69,13 @@ extern "C" {
# endif
/* _BLI_ASSERT_ABORT */
# ifdef WITH_ASSERT_ABORT
-# define _BLI_ASSERT_ABORT abort
+# ifdef __GNUC__
+/* Cast to remove 'noreturn' attribute since this suppresses missing return statements,
+ * allowing changes to debug builds to accidentally to break release builds. */
+# define _BLI_ASSERT_ABORT ((void (*)(void))(*(((void **)abort))))
+# else
+# define _BLI_ASSERT_ABORT abort
+# endif
# else
# define _BLI_ASSERT_ABORT() (void)0
# endif
More information about the Bf-blender-cvs
mailing list