emacs-devel
[Top][All Lists]
Advanced

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

Re: Emacs:Native-Comp Backtrace


From: Andrea Corallo
Subject: Re: Emacs:Native-Comp Backtrace
Date: Wed, 26 Aug 2020 19:09:01 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)

"T.V Raman" <raman@google.com> writes:

> "T.V Raman" <raman@google.com> writes:
>
> Here is some more info based on a work-around:
>
> Conjecture: native-comp has issues with with-eval-after-load and
> friends:
>
> The following setup produced the afore-mentioned error:
>
> 1. In the emacs startup, load dired-x when dired is loaded:
>    (with-eval-after-load "dired" (require 'dired-x))
>    2. dired-mode-hook contains dired-omit-mode defined in dired-x
> 3. During startup, a dired buffer is opened -- either via psession,
>    desktop or some other means
>
>    With the above, you get the error (symbol's function definition is
>    void: dired-omit-mode)
>
>    Fix: If in the startup file, you remove the with-eval-after-load and
>    simply require dired-x, then it works.
>
>    Additional info which lends credence to the conjecture:
>
>    Emacspeak loads module-specific code using eval-after-load e.g. when
>    "ido" is loaded, it loads emacspeak-ido after ido is done loading. In
>    native-comp emacs, I find that (featurep 'emacspeak-ido) is nil after
>    ido is loaded.
>
>    I suspect use-package may also  be affected in  a similar way.

Hi Raman

thanks for having a look.

This issue sounds strange but before looking into it I'd like to rework
the advicing primitive mechanism for the native code.

This is a source of incompatibility that may cause a number of the small
strange behaviours we still see today.  As a matter of fact today any
primitive that gets advised if is not listed in
`comp-never-optimize-functions' will misbehave with respect to the
vanilla implementation.

This should be the last non small area that need intervention and I'll
be on this very soon.

  Andrea

-- 
akrl@sdf.org



reply via email to

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