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

From: Stefan Monnier <[email-masked]>
Date: Tue, 17 Jul 2012 02:37:35 -0400

> Looking at your previous response, it seems to suggest only that the
> _call_ to `icicle-cmd2-after-load-bookmark+' would not be
> byte-compiled, because it is quoted.

Indeed.  Compilation looks at the text, not at the dynamic call-tree, so
the code that's not textually inside a ' will be compiled just fine.

> But the defuns (via the macro) that are in the body of
> `icicle-cmd2-after-load-bookmark+': are they byte-compiled in the .elc
> where `icicle-cmd2-after-load-bookmark+' is defined?

Of course.

> IOW, given those messages, I'm wondering again whether I really need the
> (user-optional) calls to `icicle-maybe-byte-compile-after-load'.  I was
> supposing that I needed them because the definitions are inside an
> `eval-after-load' (with a quoted sexp, as you mentioned).

No, the definitions are not inside an eval-after-load.  They are
*evaluated* from an eval-after-load, but they are not *located*
inside it.

        Stefan