"T.V Raman" 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 Andrea and others, > > This is a follow-on to my earlier message re a possible race > condition, this time with a backtrace. > > 1. I load dired-x in my emacs startup, and I have dired-omit-mode > enabled via customize (settings saved to a custom file) > > 2. The above emacs startup works with no errors or warnings with > regular emacs. > > 3. With emacs native-comp version, this throws a symbol's value > as variable is void in the *Messages* buffer. > 4. native-emacs (native comp version) does not throw a > backtrace even if you start it as native-emacs > --debug-init > > 5. I produced the attached backtrace by setting > debug-on-error to t at the top of my early-init.el > 6. As the backtrace below shows, the psession package > in the process of restoring buffers opens a dired > buffer, and at that point, dired-omit-mode is on > dired-mode-hook, but apparently dired-x hasn't been > fully loaded yet. > > Debugger entered--Lisp error: (void-function dired-omit-mode) > (dired-omit-mode) > (run-hooks change-major-mode-after-body-hook dired-mode-hook) > (apply run-hooks (change-major-mode-after-body-hook dired-mode-hook)) > (run-mode-hooks dired-mode-hook) > (dired-mode "~/Mail/foo" "-al") > (dired-internal-noselect "~/Mail/foo" nil) > (dired-noselect "~/Mail/foo") > (run-hook-with-args-until-success dired-noselect "~/Mail/foo") > (find-file-noselect "/home/raman/Mail/foo/" nowarn) > (psession--restore-some-buffers) > (run-hooks emacs-startup-hook term-setup-hook) > (#f(compiled-function () #)) > (normal-top-level) > > -- > ♈Id: kg:/m/0285kf1 🦮♈ -- ♈Id: kg:/m/0285kf1 🦮♈