cl-letf is an autoloaded macro defined in cl-macs.el.gz.

Signature
(cl-letf ((PLACE VALUE) ...) BODY...)

Documentation
Temporarily bind to PLACEs.

This is the analogue of let, but with generalized variables (in the
sense of setf) for the PLACEs.  Each PLACE is set to the corresponding
VALUE, then the BODY forms are executed.  On exit, either normally or
because of a throw or error, the PLACEs are set back to their original
values.  Note that this macro is *not* available in Common Lisp.
As a special case, if (PLACE) is used instead of (PLACE VALUE),
the PLACE is not modified before executing BODY.

See info node (cl) Modify Macros for details.

View in manual

References
References in cl-macs.el.gz:
(defmacro cl-letf* ...) 1 reference

Find all references Functions used by cl-letf

Debugging
Enable edebug Enable tracing
Disassemble Forget

Aliases
letf (obsolete since 27.1)

Source Code
;; Defined in /usr/share/emacs/29.3/lisp/emacs-lisp/cl-macs.el.gz
;;;###autoload
(defmacro cl-letf (bindings &rest body)
  "Temporarily bind to PLACEs.
This is the analogue of `let', but with generalized variables (in the
sense of `setf') for the PLACEs.  Each PLACE is set to the corresponding
VALUE, then the BODY forms are executed.  On exit, either normally or
because of a `throw' or error, the PLACEs are set back to their original
values.  Note that this macro is *not* available in Common Lisp.
As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)',
the PLACE is not modified before executing BODY.

See info node `(cl) Modify Macros' for details.

\(fn ((PLACE VALUE) ...) BODY...)"
  (declare (indent 1) (debug ((&rest [&or (symbolp form)
                                          (gate gv-place &optional form)])
                              body)))
  (if (and (not (cdr bindings)) (cdar bindings) (symbolp (caar bindings))
           (not (assq (caar bindings)
                      (alist-get :cl-symbol-macros macroexpand-all-environment))))
      `(let ,bindings ,@body)
    (cl--letf bindings () () body)))

Symbol Properties
edebug-form-spec
  ((&rest
    [&or
     (symbolp form)
     (gate gv-place &optional form)])
   body)
function-history
  ("/usr/share/emacs/29.3/lisp/emacs-lisp/cl-macs.elc"
   (autoload "cl-macs"
     ("/usr/share/emacs/29.3/lisp/emacs-lisp/cl-loaddefs.elc" . 27794)
     nil t))
lisp-indent-function
  1