From 3cf1729a0219b8b461e171dc88ece36530596c74 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Thu, 5 May 2011 16:43:14 -0300 Subject: new macro 'lua_longassert' that is equivalent to an assertion without a stringfication of the condition, to avoid too long string literals (limited by C90 to ~510 characters) --- llimits.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'llimits.h') diff --git a/llimits.h b/llimits.h index 72f32a8d..a5d18957 100644 --- a/llimits.h +++ b/llimits.h @@ -1,5 +1,5 @@ /* -** $Id: llimits.h,v 1.87 2011/02/01 16:52:38 roberto Exp roberto $ +** $Id: llimits.h,v 1.88 2011/02/28 17:32:10 roberto Exp roberto $ ** Limits, basic types, and some other `installation-dependent' definitions ** See Copyright Notice in lua.h */ @@ -59,9 +59,12 @@ typedef LUAI_UACNUMBER l_uacNumber; /* internal assertions for in-house debugging */ #if defined(lua_assert) #define check_exp(c,e) (lua_assert(c), (e)) +/* to avoid problems with conditions too long */ +#define lua_longassert(c) { if (!(c)) lua_assert(0); } #else #define lua_assert(c) /* empty */ #define check_exp(c,e) (e) +#define lua_longassert(c) /* empty */ #endif /* -- cgit v1.2.3-55-g6feb