From 5a50c69c63906a5221c1efc216368aeac85db73a Mon Sep 17 00:00:00 2001 From: Kris Katterjohn Date: Thu, 25 Nov 2021 14:45:12 -0500 Subject: [PATCH] Handle all specreps in ERROR-SIZE A RATDISREP call was added to ERROR-SIZE in commit 6815885a, but this loses when the arg is a Poisson series. Now use SPECREPCHECK instead to safely disrep any specreps here. One easy way to trigger a lisp error was apply(foo,intopois(1)). No problems with the test suite or share test suite. --- src/merror.lisp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/merror.lisp b/src/merror.lisp index 2d99d494b..f102c3d75 100644 --- a/src/merror.lisp +++ b/src/merror.lisp @@ -39,12 +39,12 @@ this variable may be determined by factors of terminal speed and type.") (defun error-size (exp) - ; RATDISREP the argument in case it's a CRE. Ugh. - ; But RATDISREP simplifies its argument, which is a no-no if we got here + ; Call SPECREPCHECK on the argument in case it's a specrep. Ugh. + ; But this simplifies its argument, which is a no-no if we got here ; because some simplification code is complaining, so inhibit simplification. Double ugh. (let (($simp nil)) (declare (special $simp)) - (setq exp (ratdisrep exp))) + (setq exp (specrepcheck exp))) (if (atom exp) 0 -- 2.11.4.GIT