diff --git a/src/lsp/setf.lsp b/src/lsp/setf.lsp index b7b892e6a..fa912752e 100644 --- a/src/lsp/setf.lsp +++ b/src/lsp/setf.lsp @@ -560,10 +560,7 @@ retrieved by (DOCUMENTATION 'SYMBOL 'FUNCTION)." (LIST* (LIST (CAR STORES) - (IF (AND (LISTP %REFERENCE) (EQ (CAR %REFERENCE) 'THE)) - (LIST 'THE (CADR %REFERENCE) - (LIST* (QUOTE ,function) GETTER ,@varlist ,restvar)) - (LIST* (QUOTE ,function) GETTER (MAPCAR #'CAR ALL-VARS)))) + (LIST* (QUOTE ,function) GETTER (MAPCAR #'CAR ALL-VARS))) (APPEND ALL-VARS LET-LIST))) `(LET* ,(NREVERSE LET-LIST) (DECLARE (:READ-ONLY ,@(mapcar #'first all-vars) diff --git a/src/tests/normal-tests/ansi.lsp b/src/tests/normal-tests/ansi.lsp index 662d0da33..5c442fe35 100644 --- a/src/tests/normal-tests/ansi.lsp +++ b/src/tests/normal-tests/ansi.lsp @@ -47,6 +47,16 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;; +;; 12.2.* Numbers tests ;; +;;;;;;;;;;;;;;;;;;;;;;;;;; +(test ansi.12.2.incf + (let ((foo 0) + (bar 0)) + (flet ((inc () (incf foo))) + (incf (the fixnum bar) (inc))) + (is (= foo 1)))) + ;;;;;;;;;;;;;;;;;;;;;;;;; ;; 19.* Pathname tests ;; ;;;;;;;;;;;;;;;;;;;;;;;;;