diff --git a/ansi-tests/tagbody.lsp b/ansi-tests/tagbody.lsp index 89e1738b01440a0e4c15bc2d230f3b545a56a3af..fd373e176558dac9525dba2e97b06d277caa8ed5 100644 --- a/ansi-tests/tagbody.lsp +++ b/ansi-tests/tagbody.lsp @@ -113,3 +113,49 @@ a) result) 20) + +;;; Test that integers are accepted as go tags + +(deftest tagbody.13 + (block done + (tagbody + (go around) + 10 + (return-from done 'good) + around + (go 10))) + good) + +(deftest tagbody.14 + (block done + (tagbody + (go around) + -10 + (return-from done 'good) + around + (go -10))) + good) + +(deftest tagbody.15 + (block done + (tagbody + (go around) + #.(1+ most-positive-fixnum) + (return-from done 'good) + around + (go #.(1+ most-positive-fixnum)))) + good) + +(deftest tagbody.16 + (let* ((t1 (1+ most-positive-fixnum)) + (t2 (1+ most-positive-fixnum)) + (form `(block done + (tagbody + (go around) + ,t1 + (return-from done 'good) + around + (go ,t2))))) + (eval form)) + good) +