Function: byte-compile-output-file-form

byte-compile-output-file-form is a byte-compiled function defined in bytecomp.el.gz.

Signature

(byte-compile-output-file-form FORM)

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/bytecomp.el.gz
(defun byte-compile-output-file-form (form)
  ;; Write the given form to the output buffer, being careful of docstrings
  ;; in defvar, defvaralias, defconst, autoload and
  ;; custom-declare-variable because make-docfile is so amazingly stupid.
  ;; defalias calls are output directly by byte-compile-file-form-defmumble;
  ;; it does not pay to first build the defalias in defmumble and then parse
  ;; it here.
  (when byte-native-compiling
    ;; Spill output for the native compiler here
    (push (make-byte-to-native-top-level :form form :lexical lexical-binding)
          byte-to-native-top-level-forms))
  (let ((print-escape-newlines t)
        (print-length nil)
        (print-level nil)
        (print-quoted t)
        (print-gensym t)
        (print-circle                   ; Handle circular data structures.
         (not byte-compile-disable-print-circle)))
    (if (and (memq (car-safe form) '(defvar defvaralias defconst
                                      autoload custom-declare-variable))
             (stringp (nth 3 form)))
        (byte-compile-output-docform nil nil '("\n(" 3 ")") form nil
                                     (memq (car form)
                                           '(defvaralias autoload
                                              custom-declare-variable)))
      (princ "\n" byte-compile--outbuffer)
      (prin1 form byte-compile--outbuffer)
      nil)))