[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11847: 24.1.50; Error: Don't know how to compile #[nil "..."]

From: Drew Adams
Subject: bug#11847: 24.1.50; Error: Don't know how to compile #[nil "..."]
Date: Mon, 2 Jul 2012 23:12:57 -0700

> My startup sequence loads some libraries, but it does not try 
> to compile anything.

I take back that last part.  I do this kind of thing - but it is nothing new
(has always worked before):

(defcustom icicle-byte-compile-eval-after-load-flag t
  "*Non-nil means byte-compile definitions made within `eval-after-load'.
Some Icicles functions (commands, in particular) work only if a given
library is loaded.  Some such functions are defined inside an
`eval-after-load' form, which means they are defined only, and as soon
as, the required library is loaded.

If this option is non-nil then those function definitions are
byte-compiled.  This compilation adds a bit to the load time, in
effect, but it means that the functions run faster."
  :type 'boolean :group 'Icicles-Miscellaneous)

(defmacro icicle-maybe-byte-compile-after-load (function)
  "Byte-compile FUNCTION if `icicle-byte-compile-eval-after-load-flag'.
Do nothing if FUNCTION has not been defined (`fboundp')."
  `(when (and icicle-byte-compile-eval-after-load-flag (fboundp ',function))
    (require 'bytecomp)
    (let ((byte-compile-warnings  ())
          (byte-compile-verbose   nil))
      (byte-compile ',function))))

(defun icicle-cmd2-after-load-bookmark+ ()
  "Things to do for `icicles-cmd2.el' after loading `bookmark+.el'."
  (icicle-define-file-command icicle-bookmark-a-file ...)
  (icicle-maybe-byte-compile-after-load icicle-bookmark-a-file)
  ... ;; Etc. - more defs followed by maybe byte-compiling them.

(eval-after-load "bookmark+" '(icicle-cmd2-after-load-bookmark+))

Where is the problem?  Why does Emacs now raise a runtime error?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]