summaryrefslogtreecommitdiffstats
path: root/lib.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2018-11-25 10:23:16 -0800
committerKaz Kylheku <kaz@kylheku.com>2018-11-25 10:23:16 -0800
commit6395346bee2382d0e800ce28593c48ad3bab9792 (patch)
treef4f37b49b4269bc346d60bdbfe31f707c518e8e1 /lib.h
parent2ca84b85530a886bb1d5314ca5c006529e08540b (diff)
downloadtxr-6395346bee2382d0e800ce28593c48ad3bab9792.tar.gz
txr-6395346bee2382d0e800ce28593c48ad3bab9792.tar.bz2
txr-6395346bee2382d0e800ce28593c48ad3bab9792.zip
logxor: fix seriously broken function.
Reported by Guillaume le Vaillant. * arith.c (logxor): Fix broken behavior when the arguments are the same nonzero fixnum, or the same bignum object. (logxor_old): New function: verbatim copy of previous logxor. * eval.c (eval_init): Register logxor intrinsic to the broken function if compatibility is 202 or less. * txr.1: Compat note added.
Diffstat (limited to 'lib.h')
-rw-r--r--lib.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib.h b/lib.h
index be25d684..14882390 100644
--- a/lib.h
+++ b/lib.h
@@ -749,6 +749,7 @@ val logior(val, val);
val logandv(struct args *nlist);
val logiorv(struct args *nlist);
val logxor(val, val);
+val logxor_old(val, val);
val logtest(val, val);
val lognot(val, val);
val logtrunc(val a, val bits);