For the briefly-glancing reader, please notice that Jean /correctly/ said that
(defun foo (x y) (declare (optimize (safety 0))) (locally (declare (optimize (safety 3)) ...))
is DIFFERENT to
(defun foo* (x y) (declare (optimize (safety 0)) (declare (optimize (safety 3)) ...)
The latter has unspecified consequences (multiple ambiguous declarations given) whereas the former means that argument processing and result passing should happen under (safety 0) whereas the rest of the definition should happen under (safety 3).
For the briefly-glancing reader, please notice that Jean /correctly/ said
that
(defun foo (x y)
(declare (optimize (safety 0)))
(locally (declare (optimize (safety 3))
...))
is DIFFERENT to
(defun foo* (x y)
(declare (optimize (safety 0))
(declare (optimize (safety 3))
...)
The latter has unspecified consequences (multiple ambiguous
declarations given) whereas the former means that argument
processing and result passing should happen under (safety 0)
whereas the rest of the definition should happen under (safety 3).