diff --git a/src/cmp/cmpenv-declare.lsp b/src/cmp/cmpenv-declare.lsp index b6023288b..5a47f3b8f 100644 --- a/src/cmp/cmpenv-declare.lsp +++ b/src/cmp/cmpenv-declare.lsp @@ -131,11 +131,10 @@ and a possible documentation string (only accepted when DOC-P is true)." (return-from search-optimization-quality 3))))))) (defun compute-optimizations (arguments env) - (let ((optimizations (cmp-env-all-optimizations env))) + (let ((optimizations (copy-list (cmp-env-all-optimizations env)))) (dolist (x arguments) - (when (symbolp x) (setq x (list x 3))) - (unless optimizations - (setq optimizations (cmp-env-all-optimizations))) + (when (symbolp x) + (setq x (list x 3))) (if (or (not (consp x)) (not (consp (cdr x))) (not (numberp (second x)))