1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
From fc150f99c89dfa8396aca7544d7608efbc5fb6ab Mon Sep 17 00:00:00 2001
From: Rob Browning <rlb@defaultvalue.org>
Date: Sat, 12 Sep 2020 19:26:31 -0500
Subject: numbers.test: disable unresolved "mixed type" division tests on i686
Bug: https://debbugs.gnu.org/43262
Bug-Debian: https://bugs.debian.org/968403
---
test-suite/tests/numbers.test | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/test-suite/tests/numbers.test b/test-suite/tests/numbers.test
index a5e993135..43a7c883c 100644
--- a/test-suite/tests/numbers.test
+++ b/test-suite/tests/numbers.test
@@ -5257,14 +5257,21 @@
(define big (expt 10 (1+ (inexact->exact (ceiling (log10 fixnum-max))))))
+ (define tests-unresolved? #f)
+
(define (run-division-tests quo+rem quo rem valid-answer?)
(define (test n d)
(run-test (list n d) #t
(lambda ()
(let-values (((q r) (quo+rem n d)))
- (and (test-eqv? q (quo n d))
- (test-eqv? r (rem n d))
- (valid-answer? n d q r))))))
+ (let ((result (and (test-eqv? q (quo n d))
+ (test-eqv? r (rem n d))
+ (valid-answer? n d q r))))
+ (if result
+ result
+ (if tests-unresolved?
+ (throw 'unresolved)
+ result)))))))
(define (test+/- n d)
(test n d )
(test n (- d))
@@ -5372,6 +5379,9 @@
(test-for-exception
n d exception:numerical-overflow)))))))
+ (when (string=? "i686" (utsname:machine (uname)))
+ (set! tests-unresolved? #t))
+
(with-test-prefix "euclidean/"
(run-division-tests euclidean/
euclidean-quotient
@@ -5396,6 +5406,9 @@
truncate-remainder
valid-truncate-answer?))
+ (when (string=? "i686" (utsname:machine (uname)))
+ (set! tests-unresolved? #f))
+
(with-test-prefix "centered/"
(run-division-tests centered/
centered-quotient
|