Mercurial > hg > xemacs-beta
diff src/lisp.h @ 4134:ac5a714be3a2
[xemacs-hg @ 2007-08-21 20:32:33 by aidan]
Don't use args to XINT_OR_CHAR where multiple evaluation is possible; revise
X_I_O_C to not multiply evaluate.
author | aidan |
---|---|
date | Tue, 21 Aug 2007 20:32:37 +0000 |
parents | 5333f383efbd |
children | d9eb5ea14f65 |
line wrap: on
line diff
--- a/src/lisp.h Tue Aug 21 12:39:15 2007 +0000 +++ b/src/lisp.h Tue Aug 21 20:32:37 2007 +0000 @@ -2890,7 +2890,15 @@ #else /* no error checking */ -#define XCHAR_OR_INT(obj) (CHARP (obj) ? XCHAR (obj) : XINT (obj)) +/* obj is multiply eval'ed and not an lvalue; use an inline function instead + of a macro. */ +DECLARE_INLINE_HEADER ( +EMACS_INT +XCHAR_OR_INT (Lisp_Object obj) +) +{ + return CHARP (obj) ? XCHAR (obj) : XINT (obj); +} #endif /* no error checking */