diff --git a/ansi-tests/beyond-ansi/errors-data-and-control-flow-2.lsp b/ansi-tests/beyond-ansi/errors-data-and-control-flow-2.lsp index 2989fe0894829d5f81ad18143fdab833e22a6c62..d0d2e9b6cca9854dd472e6ebf819d97b7212d956 100644 --- a/ansi-tests/beyond-ansi/errors-data-and-control-flow-2.lsp +++ b/ansi-tests/beyond-ansi/errors-data-and-control-flow-2.lsp @@ -184,6 +184,18 @@ (def-error-test go.4 (tagbody (go done . foo) done)) (def-error-test go.5 (tagbody (go done foo) done)) +;; try to use GO on tag outside of dynamic-extent of TAGBODY +(def-error-test go.6 + (let ((f nil)) + (tagbody (setf f (lambda () (go foo))) foo) + (funcall f))) +(def-error-test go.7 + (funcall (block nil + (tagbody + (return (lambda () (go :foo))) + :foo (return 42))))) + + ;;; RETURN-FROM (def-error-test return-from.1 (return-from))