summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMattias EngdegÄrd <mattiase@acm.org>2020-03-27 18:11:18 +0100
committerMattias EngdegÄrd <mattiase@acm.org>2020-03-27 18:11:18 +0100
commitc2b8ce4439935e2e158d4357d234135a251c5767 (patch)
tree982b300e317a12e9d8952e5317dcf755890f7314 /test
parente1f0e0892232221e6333b24788b97942c83ec738 (diff)
downloademacs-c2b8ce4439935e2e158d4357d234135a251c5767.tar.gz
Calc: don't treat nil as an integer (bug#40155)
Make Math-num-integerp return false for nil, following Math-integerp which was changed in the bignum reform. This fixes a crash in calc-graph-fast. Reported by Narendra Joshi. * lisp/calc/calc-macs.el (Math-num-integerp): Not true for nil. * test/lisp/calc/calc-tests.el (calc-Math-integerp): New tests.
Diffstat (limited to 'test')
-rw-r--r--test/lisp/calc/calc-tests.el11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/lisp/calc/calc-tests.el b/test/lisp/calc/calc-tests.el
index 784b404898a..8fffb7c14b5 100644
--- a/test/lisp/calc/calc-tests.el
+++ b/test/lisp/calc/calc-tests.el
@@ -334,6 +334,17 @@ An existing calc stack is reused, otherwise a new one is created."
(should (equal tos '(- (* 2 (var x var-x)) 4)))
(should (equal trail "pdiv 2 * x - 4\nprem 8 * x + 1\n"))))))
+(ert-deftest calc-Math-integerp ()
+ (should (Math-integerp -7))
+ (should (Math-integerp (ash 1 65)))
+ (should-not (Math-integerp '(float 1 0)))
+ (should-not (Math-integerp nil))
+
+ (should (Math-num-integerp -7))
+ (should (Math-num-integerp (ash 1 65)))
+ (should (Math-num-integerp '(float 1 0)))
+ (should-not (Math-integerp nil)))
+
(provide 'calc-tests)
;;; calc-tests.el ends here