Browse Source

Macro LUAI_ASSERT eases turning assertions on

Roberto Ierusalimschy 5 years ago
parent
commit
6f5bd5072d
3 changed files with 11 additions and 4 deletions
  1. 9 1
      llimits.h
  2. 1 3
      ltests.h
  3. 1 0
      makefile

+ 9 - 1
llimits.h

@@ -84,7 +84,15 @@ typedef LUAI_UACNUMBER l_uacNumber;
 typedef LUAI_UACINT l_uacInt;
 
 
-/* internal assertions for in-house debugging */
+/*
+** Internal assertions for in-house debugging
+*/
+#if defined LUAI_ASSERT
+#undef NDEBUG
+#include <assert.h>
+#define lua_assert(c)           assert(c)
+#endif
+
 #if defined(lua_assert)
 #define check_exp(c,e)		(lua_assert(c), (e))
 /* to avoid problems with conditions too long */

+ 1 - 3
ltests.h

@@ -20,9 +20,7 @@
 
 
 /* turn on assertions */
-#undef NDEBUG
-#include <assert.h>
-#define lua_assert(c)           assert(c)
+#define LUAI_ASSERT
 
 
 

+ 1 - 0
makefile

@@ -38,6 +38,7 @@ CWARNSC= -Wdeclaration-after-statement \
 CWARNS= $(CWARNSCPP) $(CWARNSC)
 
 # Some useful compiler options for internal tests:
+# -DLUAI_ASSERT turns on all assertions inside Lua.
 # -DHARDSTACKTESTS forces a reallocation of the stack at every point where
 # the stack can be reallocated.
 # -DHARDMEMTESTS forces a full collection at all points where the collector