--- Begin Message ---
Subject: |
[feature/native-comp] defalias to macro in compiled elisp seems to not work in smartparens |
Date: |
Sun, 15 Nov 2020 18:14:48 +0000 |
Hi,
After the following pull request was merged:
https://github.com/Fuco1/smartparens/pull/958
I started getting this error:
Error running timer ‘sp-show--pair-function’: (invalid-function
sp--while-no-input)
The offending code seems to be:
(defalias 'sp--while-no-input 'while-no-input)
And then later the call to "sp--while-no-input" within the
"sp-show--pair-function" function. If I manually eval the
"sp-show--pair-function" so it's no longer a natively compiled
function, things start working again.
For now in my personal config (which is not native-compiled), I've
resorted to this work-around which seems to work:
(defun sp--while-no-input (&rest body)
(eval (append '(while-no-input) body)))
Thanks again :)
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#44660: [feature/native-comp] defalias to macro in compiled elisp seems to not work in smartparens |
Date: |
Mon, 16 Nov 2020 14:38:15 +0000 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Jim Myhrberg <contact@jimeh.me> writes:
> Hi Andrea,
>
> Yep, it does indeed fix it. I assume it's related to byte compilation
> then, and not native-comp? Thanks for your quick response, and I'm
> sorry for wasting your time with this :(
Hi Jim,
yes this "front-end" related.
To have top level forms taking effect in the compile time those has to
be enclosed into `eval-when-compile' or `cl-eval-when'.
You should be able to see the same issue from command line using like
`batch-byte-compile-file'.
I'm closing this, thanks for reporting!
Andrea
--- End Message ---