X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=tests%2Fpprint.impure.lisp;h=4e6d8a3394ca97c6cd1bbb0850195fa1eee4fbac;hb=6d9e2243954872457115bbb9ac1ecb1d161acced;hp=038af4d8f10e53624cfeec2a67de208a686b28f2;hpb=a51d83191034919bc76367268929e234d62164db;p=sbcl.git diff --git a/tests/pprint.impure.lisp b/tests/pprint.impure.lisp index 038af4d..4e6d8a3 100644 --- a/tests/pprint.impure.lisp +++ b/tests/pprint.impure.lisp @@ -278,5 +278,18 @@ (assert (eq orig (pprint-dispatch 'some-symbol))) (assert (not (eq alt orig))))) +(with-test (:name :pprint-improper-list) + (let* ((max-length 10) + (stream (make-broadcast-stream)) + (errors + (loop for symbol being the symbol in :cl + nconc + (loop for i from 1 below max-length + for list = (cons symbol 10) then (cons symbol list) + when (nth-value 1 (ignore-errors (pprint list stream))) + collect (format nil "(~{~a ~}~a . 10)" (butlast list) symbol))))) + (when errors + (error "Can't PPRINT imporper lists: ~a" errors)))) + ;;; success