X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fload.lisp;h=8b3067df27ca8639abed6154e0fd6fb4ab4a3e90;hb=25fe91bf63fd473d9316675b0e0ca9be0079e9eb;hp=b21c7dd7a90ba8c3f4465e66b01adb7898d45e77;hpb=cb254941e176badff31a16a11509e1ac288ae249;p=sbcl.git diff --git a/src/code/load.lisp b/src/code/load.lisp index b21c7dd..8b3067d 100644 --- a/src/code/load.lisp +++ b/src/code/load.lisp @@ -174,9 +174,12 @@ (aver (member pushp '(nil t :nope))) (with-unique-names (fop-stack) `(let ((,fop-stack *fop-stack*)) - (declare (type (vector t) ,fop-stack)) + (declare (type (vector t) ,fop-stack) + (ignorable ,fop-stack)) (macrolet ((pop-stack () `(vector-pop ,',fop-stack)) + (push-stack (value) + `(vector-push-extend ,value ,',fop-stack)) (call-with-popped-args (fun n) `(%call-with-popped-args ,fun ,n ,',fop-stack))) ,(if pushp @@ -365,10 +368,11 @@ (defun load-fasl-group (stream) (when (check-fasl-header stream) (catch 'fasl-group-end - (let ((*current-fop-table-index* 0)) + (let ((*current-fop-table-index* 0) + (*skip-until* nil)) + (declare (special *skip-until*)) (loop (let ((byte (read-byte stream))) - ;; Do some debugging output. #!+sb-show (when *show-fops-p*