&environment in setf-lambda-lists leads to call failure

Minimal test case:

(defsetf foo (&environment env var) (value)
  var)

(setf (foo 0) 1)

The call errors out:

;; In form
;; (SETF (FOO 0) 1)
;; Wrong number of arguments passed to function FOO.
;;    [Condition of type SI:SIMPLE-PROGRAM-ERROR]
;; 
;; Restarts:
;;  0: [RETRY] Retry SLIME REPL evaluation request.
;;  1: [*PROCESS-INPUT] Continue reading input.
;;  2: [ABORT] Return to SLIME's top level.
;;  3: [CLOSE-CONNECTION] Close SLIME connection.
;;  4: [RESTART-TOPLEVEL] Go back to Top-Level REPL.
;; 
;; Backtrace:
;;   0: DEBUG-IN-EMACS
;;   1: INVOKE-SLIME-DEBUGGER
;;   2: G992
;;   3: CALL-WITH-DEBUGGER-HOOK
;;   4: SWANK-DEBUGGER-HOOK
;;   5: #<bytecompiled-function FOO>
;;   6: EVAL-REGION
;;   7: G102
;;   8: TRACK-PACKAGE
;;   9: G101
;;  10: CALL-WITH-RETRY-RESTART
;;  11: G100
;;  12: CALL-WITH-BUFFER-SYNTAX
;;  13: REPL-EVAL
;;  14: LISTENER-EVAL
;;  15: #<bytecompiled-function BYTECODES>
;;  16: EVAL-FOR-EMACS
;;  17: PROCESS-REQUESTS
;;  18: G372
;;  19: HANDLE-REQUESTS
;;  20: G651
;;  21: CALL-WITH-BINDINGS
;;  22: REPL-INPUT-STREAM-READ
;;  23: G643
;;  24: G226
;;  25: CALL-WITH-LOCK-HELD
;;  26: G225
;;  27: SIMPLE-REPL
;;  28: G594
;;  29: G585
;;  30: CALL-WITH-USER-BREAK-HANDLER
;;  31: G582
;;  32: CALL-WITH-DEBUGGER-HOOK
;;  33: G626
;;  34: CALL-WITH-BINDINGS
;;  35: SIMPLE-SERVE-REQUESTS
;;  36: SERVE-REQUESTS
;;  37: ACCEPT-CONNECTIONS
;;  38: SERVE
;;  39: SERVE-LOOP
;;  40: SETUP-SERVER
;;  41: START-SERVER
;;  42: #<bytecompiled-function BYTECODES>
;;  43: #<bytecompiled-function BYTECODES>
;;  --more--

According to CLHS defsetf takes a defsetf-lambda-list, which is described in 3.4.7 and allows the &environment parameter.