From: Karsten P. <kar...@gm...> - 2011-02-13 16:24:36
|
On 2/9/11 1:30 PM, Nikodemus Siivola wrote: > On 6 January 2011 09:18, Karsten Poeck<kar...@gm...> wrote: > >> Compiling current cl-http with sbcl 1_0_45 results in an compiler error. > > Can you try 1.0.45.5 or newer? (Given the current Sourceforge CVS > outage you're best of getting the version from git from > sbcl.boinkor.net.) > > I suspect this is a recent regression, and may already be fixed as of 1.0.45.5. > Hello Nikodemus, effectively with the version from GIT ("1.0.45.13") the first compiler error goes away. I now run into a second problem, see below. If I comment the offending definition out, everything compiles and the example site works as expected. Regarding the availability of sources of cl-http I am still waiting for an answer on how to best provide them should it be necessary Is this mailing list still an adequate forum to comment bugs, or should I rather open an issue at launchpad? sbcl 1.0.45.13 on darwin (snow leopard), threads enabled, not other extensions, nothing else loaded. Final error: debugger invoked on a TYPE-ERROR in thread #<THREAD "initial thread" RUNNING {1002969531}>: The value NIL is not of type SB-KERNEL:CTYPE. Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level. (SB-KERNEL:VALUES-TYPE-OUT #<SB-KERNEL:VALUES-TYPE (COMMON-LISP:VALUES (MEMBER T NIL) &OPTIONAL T)> 1) backtrace 0: (SB-KERNEL:VALUES-TYPE-OUT #<SB-KERNEL:VALUES-TYPE (COMMON-LISP:VALUES (MEMBER T NIL) &OPTIONAL T)> 1) 1: (SB-C::CONVERT-TYPE-CHECK #<SB-ALIEN:CAST :%TYPE-CHECK NIL :VALUE #<SB-C::LVAR 1 {1004E242D1}> :ASSERTED-TYPE #<SB-KERNEL:VALUES-TYPE (COMMON-LISP:VALUES (MEMBER T NIL) &OPTIONAL T)> :TYPE-TO-CHECK #<SB-KERNEL:NAMED-TYPE *> {1004E1A251}> ((NIL #<SB-KERNEL:MEMBER-TYPE (MEMBER T NIL)> #<SB-KERNEL:MEMBER-TYPE (MEMBER T NIL)>) (NIL #<SB-KERNEL:NAMED-TYPE T> #<SB-KERNEL:NAMED-TYPE T>) (NIL #<SB-KERNEL:NAMED-TYPE T> #<SB-KERNEL:NAMED-TYPE T>))) 2: (SB-C::GENERATE-TYPE-CHECKS #<SB-C:COMPONENT :NAME (SB-C::VARARGS-ENTRY (LAMBDA (&OPTIONAL # # # &REST #:G491))) :REANALYZE T {1004E12231}>) 3: (SB-C::IR1-PHASES #<SB-C:COMPONENT :NAME (SB-C::VARARGS-ENTRY (LAMBDA (&OPTIONAL # # # &REST #:G491))) :REANALYZE T {1004E12231}>) 4: (SB-C::COMPILE-COMPONENT #<SB-C:COMPONENT :NAME (SB-C::VARARGS-ENTRY (LAMBDA (&OPTIONAL # # # &REST #:G491))) :REANALYZE T {1004E12231}>) 5: (SB-C::%COMPILE (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* ((NEW-VIA #) (MODIFICATION-PLIST #) (ADDITIONAL-HEADERS HEADER-PLIST)) (DECLARE (DYNAMIC-EXTENT NEW-VIA MODIFICATION-PLIST)) (MULTIPLE-VALUE-BIND (PERSISTENT-CONNECTION-P CONNECTION-HEADER-PLIST CLOSE-CONNECTION-P) (PROXY-PERSISTENT-CONNECTION-PARAMETERS SERVER CONTENT-LENGTH) (COND-EVERY # # #) (WHEN *TRACE-PROXY* # #) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS STREAM MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS))))) #<SB-FASL:FASL-OUTPUT "HTTP:PROXY;UTILS.FASL.NEWEST"> :NAME NIL :PATH ((SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37)) 6: (SB-C::FOPCOMPILE-FUNCTION (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* ((NEW-VIA #) (MODIFICATION-PLIST #) (ADDITIONAL-HEADERS HEADER-PLIST)) (DECLARE (DYNAMIC-EXTENT NEW-VIA MODIFICATION-PLIST)) (MULTIPLE-VALUE-BIND (PERSISTENT-CONNECTION-P CONNECTION-HEADER-PLIST CLOSE-CONNECTION-P) (PROXY-PERSISTENT-CONNECTION-PARAMETERS SERVER CONTENT-LENGTH) (COND-EVERY # # #) (WHEN *TRACE-PROXY* # #) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS STREAM MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS))))) ((SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) T) 7: (SB-C::FOPCOMPILE (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* (# # #) (DECLARE #) (MULTIPLE-VALUE-BIND # # # # #)))) NIL 'NIL (SB-C:SOURCE-LOCATION)) ((SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 8: (SB-C::CONVERT-AND-MAYBE-COMPILE (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* (# # #) (DECLARE #) (MULTIPLE-VALUE-BIND # # # # #)))) NIL 'NIL (SB-C:SOURCE-LOCATION)) ((SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37)) 9: ((FLET SB-C::DEFAULT-PROCESSOR) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* (# # #) (DECLARE #) (MULTIPLE-VALUE-BIND # # # # #)))) NIL 'NIL (SB-C:SOURCE-LOCATION))) 10: (SB-C::PROCESS-TOPLEVEL-FORM (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* (# # #) (DECLARE #) (MULTIPLE-VALUE-BIND # # # # #)))) NIL 'NIL (SB-C:SOURCE-LOCATION)) ((EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 11: (SB-C::PROCESS-TOPLEVEL-PROGN ((SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION))) ((EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION))) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 12: (SB-C::PROCESS-TOPLEVEL-FORM (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE #) (IGNORE RESPONSE-HTTP-VERSION)) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS (LET* # # #))) NIL 'NIL (SB-C:SOURCE-LOCATION))) ((PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 13: (SB-C::PROCESS-TOPLEVEL-PROGN ((EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION)))) ((PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS # # #) NIL 'NIL (SB-C:SOURCE-LOCATION)))) SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 14: (SB-C::PROCESS-TOPLEVEL-FORM (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL) (SB-C:%COMPILER-DEFUN '%WRITE-PROXY-RESPONSE-HEADERS 'NIL T)) (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (SB-IMPL::%DEFUN '%WRITE-PROXY-RESPONSE-HEADERS (SB-INT:NAMED-LAMBDA %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE # #) (BLOCK %WRITE-PROXY-RESPONSE-HEADERS #)) NIL 'NIL (SB-C:SOURCE-LOCATION)))) (SB-C::ORIGINAL-SOURCE-START 0 37) NIL) 15: ((FLET SB-C::DEFAULT-PROCESSOR) (DEFUN %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (LET* ((NEW-VIA (COMPUTE-VIA-HEADER RESPONSE-HEADERS)) (MODIFICATION-PLIST (IF DATE-HEADER-P # #)) (ADDITIONAL-HEADERS HEADER-PLIST)) (DECLARE (DYNAMIC-EXTENT NEW-VIA MODIFICATION-PLIST)) (MULTIPLE-VALUE-BIND (PERSISTENT-CONNECTION-P CONNECTION-HEADER-PLIST CLOSE-CONNECTION-P) (PROXY-PERSISTENT-CONNECTION-PARAMETERS SERVER CONTENT-LENGTH) (COND-EVERY (PERSISTENT-CONNECTION-P #) (CLOSE-CONNECTION-P #) (CONNECTION-HEADER-PLIST #)) (WHEN *TRACE-PROXY* (FAST-FORMAT *TRACE-OUTPUT* "~&;Proxy Response ~A Status ~D~&;Proxy Response Headers:~&" # #) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS *TRACE-OUTPUT* MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS)) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS STREAM MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS))))) 16: (SB-C::PROCESS-TOPLEVEL-FORM (DEFUN %WRITE-PROXY-RESPONSE-HEADERS (STREAM SERVER RESPONSE-HEADERS RESPONSE-HTTP-VERSION CONTENT-LENGTH DATE-HEADER-P HEADER-PLIST MODIFICATION-PLIST) (DECLARE (OPTIMIZE (SPEED 3)) (IGNORE RESPONSE-HTTP-VERSION)) (LET* ((NEW-VIA (COMPUTE-VIA-HEADER RESPONSE-HEADERS)) (MODIFICATION-PLIST (IF DATE-HEADER-P # #)) (ADDITIONAL-HEADERS HEADER-PLIST)) (DECLARE (DYNAMIC-EXTENT NEW-VIA MODIFICATION-PLIST)) (MULTIPLE-VALUE-BIND (PERSISTENT-CONNECTION-P CONNECTION-HEADER-PLIST CLOSE-CONNECTION-P) (PROXY-PERSISTENT-CONNECTION-PARAMETERS SERVER CONTENT-LENGTH) (COND-EVERY (PERSISTENT-CONNECTION-P #) (CLOSE-CONNECTION-P #) (CONNECTION-HEADER-PLIST #)) (WHEN *TRACE-PROXY* (FAST-FORMAT *TRACE-OUTPUT* "~&;Proxy Response ~A Status ~D~&;Proxy Response Headers:~&" # #) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS *TRACE-OUTPUT* MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS)) (WRITE-MODIFIED-HEADERS RESPONSE-HEADERS STREAM MODIFICATION-PLIST *HOP-BY-HOP-HEADERS* T ADDITIONAL-HEADERS)))) (SB-C::ORIGINAL-SOURCE-START 0 37) NIL) Offending Form: (defun %write-proxy-response-headers (stream server response-headers response-http-version content-length date-header-p header-plist modification-plist) (declare (optimize (speed 3)) (ignore response-http-version)) (let* ((new-via (compute-via-header response-headers)) (modification-plist (if date-header-p (list* :via new-via modification-plist) (list* :date (server-request-time server) :via new-via modification-plist))) (additional-headers header-plist)) (declare (dynamic-extent new-via modification-plist)) (multiple-value-bind (persistent-connection-p connection-header-plist close-connection-p) (proxy-persistent-connection-parameters server content-length) (cond-every (persistent-connection-p (setf (server-persistent-connection-p server) t)) (close-connection-p (setf (server-close-connection-p server) t)) (connection-header-plist (setq additional-headers (nconc connection-header-plist additional-headers)))) ;; write the response headers (when *trace-proxy* (fast-format *trace-output* "~&;Proxy Response ~A Status ~D~&;Proxy Response Headers:~&" (server-http-version server) (server-status server)) (write-modified-headers response-headers *trace-output* modification-plist *hop-by-hop-headers* t additional-headers)) (write-modified-headers response-headers stream modification-plist *hop-by-hop-headers* t additional-headers)))) |