summaryrefslogtreecommitdiff
path: root/devel/m4/patches/patch-aa
diff options
context:
space:
mode:
Diffstat (limited to 'devel/m4/patches/patch-aa')
-rw-r--r--devel/m4/patches/patch-aa20
1 files changed, 20 insertions, 0 deletions
diff --git a/devel/m4/patches/patch-aa b/devel/m4/patches/patch-aa
new file mode 100644
index 00000000000..3981b0f550c
--- /dev/null
+++ b/devel/m4/patches/patch-aa
@@ -0,0 +1,20 @@
+$NetBSD: patch-aa,v 1.6 2007/07/20 22:52:44 wiz Exp $
+
+avoid the following incorrect behaviour.
+
+% echo "eval(-2/2)" | gm4 -
+2147483647
+
+has been reported on bug-m4@gnu.org
+
+--- src/eval.c.orig 2007-01-09 16:12:43.000000000 +0000
++++ src/eval.c
+@@ -721,7 +721,7 @@ mult_term (eval_token et, int32_t *v1)
+ /* Avoid the x86 SIGFPE on INT_MIN / -1. */
+ *v1 = (int32_t) -(uint32_t) *v1;
+ else
+- *v1 = (int32_t) ((uint32_t) *v1 / (uint32_t) v2);
++ *v1 = *v1 / v2;
+ break;
+
+ case MODULO: