changeset 4974:fe0d3106cc36

fix compile problems in bytecode.c when no error-check-byte-code (issue 666) -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-05 Ben Wing <ben@xemacs.org> * bytecode.c (bytecode_assert): Use 0 instead of x in disabled_assert calls to avoid errors due to using undefined vars/params (they are defined only when ERROR_CHECK_BYTE_CODE, which also turns on/off the asserts).
author Ben Wing <ben@xemacs.org>
date Fri, 05 Feb 2010 04:07:47 -0600
parents 5c89ceb69819
children c5cb3cb79110
files src/ChangeLog src/bytecode.c
diffstat 2 files changed, 15 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Thu Feb 04 05:39:00 2010 -0600
+++ b/src/ChangeLog	Fri Feb 05 04:07:47 2010 -0600
@@ -1,3 +1,10 @@
+2010-02-05  Ben Wing  <ben@xemacs.org>
+
+	* bytecode.c (bytecode_assert):
+	Use 0 instead of x in disabled_assert calls to avoid errors due
+	to using undefined vars/params (they are defined only when
+	ERROR_CHECK_BYTE_CODE, which also turns on/off the asserts).
+
 2010-02-04  Ben Wing  <ben@xemacs.org>
 
 	* bytecode.c (assert_failed_with_remembered_ops):
--- a/src/bytecode.c	Thu Feb 04 05:39:00 2010 -0600
+++ b/src/bytecode.c	Fri Feb 05 04:07:47 2010 -0600
@@ -121,8 +121,14 @@
 
 #ifndef ERROR_CHECK_BYTE_CODE
 
-# define bytecode_assert(x) disabled_assert (x)
-# define bytecode_assert_with_message(x, msg) disabled_assert(x)
+/* Normally we would use `x' instead of `0' in the argument list, to avoid
+   problems if `x' (an expression) has side effects, and warnings if `x'
+   contains variables or parameters that are otherwise unused.  But in
+   this case `x' contains references to vars and params that exist only
+   when ERROR_CHECK_BYTE_CODE, and leaving in `x' would result in compile
+   errors. */
+# define bytecode_assert(x) disabled_assert (0)
+# define bytecode_assert_with_message(x, msg) disabled_assert(0)
 # define bytecode_abort_with_message(msg) abort_with_message (msg)
 
 #else /* ERROR_CHECK_BYTE_CODE */