Subject: bug#61917: 29.0.60; native compilation issues

From: Andrea Corallo <[email-masked]>
Date: Sun, 26 Mar 2023 09:20:06 +0000

Naofumi Yasufuku <[email-masked]> writes:

> Andrea Corallo <[email-masked]> writes:
>
>> Naofumi Yasufuku <[email-masked]> writes:
>>>
>>> My latest emacs-29 08fbc133756 build (includes bug#61917 fixes)
>>> fails to start with the following errors after recompiling eln-cache:
>>>
>>> ------------------------------------------------------------------------
>>> Loading /Users/naofumi/.ddskk/init (native compiled elisp)...done
>>> skk-emacs-prepare-modeline-properties: Wrong type argument: listp, :type
>>> Error in post-command-hook (yas--post-command-handler): (wrong-number-of-arguments #<subr signal> 1) [2 times]
>>> ------------------------------------------------------------------------
>>
>> Hi Naofumi,
>>
>> could you please provide a reproducer so we can investigate this issue?
>>
>
> Hello, Andrea
>
> I tried to find some simple recipe, but I couldn't.
> The following is a bit complicated YASnippet case:
>
> STEP 1) Clone YASnippet, E.g.
>
>   $ mkdir ~/.emacs.d/site-lisp-29
>   $ cd ~/.emacs.d/site-lisp-29
>   $ git clone https://github.com/joaotavora/yasnippet.git
>
> STEP 2) emacs -Q
>
> STEP 3) Byte compile yasnippet.el, then enable yas-global-mode
>
>   (push (locate-user-emacs-file "site-lisp-29/yasnippet") load-path)
>   (byte-compile-file (locate-user-emacs-file "site-lisp-29/yasnippet/yasnippet.el"))
>   (require 'yasnippet)
>   (yas-global-mode 1)
>
>
> ----------------------------
>  *Warnings*
> ----------------------------
> ⛔ Warning (comp): yasnippet.el:475:2: Warning: defvar `yas-after-exit-snippet-hook' docstring wider than 80 characters
> ⛔ Warning (comp): yasnippet.el:557:2: Warning: custom-declare-variable `yas-keymap-disable-hook' docstring wider than 80 characters
> ⛔ Warning (comp): yasnippet.el:1810:2: Warning: docstring wider than 80 characters
> ⛔ Warning (comp): yasnippet.el:2982:2: Warning: docstring wider than 80 characters
> ⛔ Warning (comp): yasnippet.el:3732:4: Warning: `declare' after `interactive'
> ⛔ Warning (comp): yasnippet.el:4735:2: Warning: docstring wider than 80 characters
> ⛔ Warning (comp): lisp.h:1289: Emacs fatal error: assertion failed: FIXNUMP (a)
>
> ----------------------------
>  *Async-native-compile-log*
> ----------------------------
> Compiling /home/naofumi/.emacs.d/site-lisp-29/yasnippet/yasnippet.el...
>
> In toplevel form:
> yasnippet.el:475:2: Warning: defvar `yas-after-exit-snippet-hook' docstring wider than 80 characters
> yasnippet.el:557:2: Warning: custom-declare-variable `yas-keymap-disable-hook' docstring wider than 80 characters
>
> In yas-define-snippets:
> yasnippet.el:1810:2: Warning: docstring wider than 80 characters
>
> In yas-longest-key-from-whitespace:
> yasnippet.el:2982:2: Warning: docstring wider than 80 characters
>
> In yas-skip-and-clear-or-delete-char:
> yasnippet.el:3732:4: Warning: `declare' after `interactive'
>
> In yas--field-parse-create:
> yasnippet.el:4735:2: Warning: docstring wider than 80 characters
>
> lisp.h:1289: Emacs fatal error: assertion failed: FIXNUMP (a)
> Fatal error 6: Aborted
> Backtrace:
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x24efa0)[0x560461b30fa0]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x2147f1)[0x560461af67f1]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x2cad55)[0x560461bacd55]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x36f6f5)[0x560461c516f5]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x3735ca)[0x560461c555ca]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x37478a)[0x560461c5678a]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x37a2fd)[0x560461c5c2fd]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x37c1b0)[0x560461c5e1b0]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309cac)[0x560461bebcac]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/native-lisp/29.0.60-1d11f894/comp-7672a6ed-a5895679.eln(F636f6d702d636f6d70696c652d637478742d746f2d66696c65_comp_compile_ctxt_to_file_0+0x1a1)[0x7fd2331d45c1]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309cac)[0x560461bebcac]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/native-lisp/29.0.60-1d11f894/comp-7672a6ed-a5895679.eln(F636f6d702d66696e616c31_comp_final1_0+0xc5)[0x7fd2331d47e5]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309c96)[0x560461bebc96]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/native-lisp/29.0.60-1d11f894/comp-7672a6ed-a5895679.eln(F636f6d702d66696e616c_comp_final_0+0xe7)[0x7fd2331d4a17]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309cac)[0x560461bebcac]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/native-lisp/29.0.60-1d11f894/comp-7672a6ed-a5895679.eln(F636f6d702d2d6e61746976652d636f6d70696c65_comp__native_compile_0+0x822)[0x7fd2331d8ea2]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x308227)[0x560461bea227]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x34efc5)[0x560461c30fc5]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x34f825)[0x560461c31825]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x34fb6e)[0x560461c31b6e]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/../native-lisp/29.0.60-1d11f894/preloaded/mule-3352613d-8856059e.eln(F6c6f61642d776974682d636f64652d636f6e76657273696f6e_load_with_code_conversion_0+0x384)[0x7fd234843d74]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309d72)[0x560461bebd72]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x348a8c)[0x560461c2aa8c]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x34cbcb)[0x560461c2ebcb]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/../native-lisp/29.0.60-1d11f894/preloaded/startup-bbc6ea72-10e8addb.eln(F636f6d6d616e642d6c696e652d31_command_line_1_0+0x1719)[0x7fd234889fa9]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309cac)[0x560461bebcac]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/../native-lisp/29.0.60-1d11f894/preloaded/startup-bbc6ea72-10e8addb.eln(F636f6d6d616e642d6c696e65_command_line_0+0x1afc)[0x7fd2348810cc]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309c96)[0x560461bebc96]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30973f)[0x560461beb73f]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x309a8d)[0x560461beba8d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/../native-lisp/29.0.60-1d11f894/preloaded/startup-bbc6ea72-10e8addb.eln(F6e6f726d616c2d746f702d6c6576656c_normal_top_level_0+0xde7)[0x7fd23487ccc7]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x30819c)[0x560461bea19c]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x307828)[0x560461be9828]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x21ce67)[0x560461afee67]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x305054)[0x560461be7054]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x21ceaf)[0x560461afeeaf]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x304284)[0x560461be6284]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x21cd86)[0x560461afed86]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x21c160)[0x560461afe160]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x21c37d)[0x560461afe37d]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x217b24)[0x560461af9b24]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea)[0x7fd239049d0a]
> /home/naofumi/src/git.sv.gnu.org/debug/emacs-29/src/emacs(+0x4978a)[0x56046192b78a]
> Compilation finished.
> --------------------------------
>
> STEP 3') Native compile yasnippet.el
>
>   (native-compile (locate-user-emacs-file "site-lisp-29/yasnippet/yasnippet.el"))
>
> ----------------------------
>  *Backtrace*
> ----------------------------
> Debugger entered--Lisp error: (wrong-type-argument "~/.emacs.d/site-lisp-29/yasnippet/yasnippet.el" number-or-marker-p "Aborted")
>   signal(wrong-type-argument ("~/.emacs.d/site-lisp-29/yasnippet/yasnippet.el" number-or-marker-p "Aborted"))
>   comp--native-compile("~/.emacs.d/site-lisp-29/yasnippet/yasnippet.el" nil nil)
>   native-compile("~/.emacs.d/site-lisp-29/yasnippet/yasnippet.el")
>   (progn (native-compile (locate-user-emacs-file "site-lisp-29/yasnippet/yasnippet.el")))
>   elisp--eval-last-sexp(t)
>   eval-last-sexp(t)
>   eval-print-last-sexp(nil)
>   funcall-interactively(eval-print-last-sexp nil)
>   command-execute(eval-print-last-sexp)

PS still, if anyone else find a more reduced reproducer that would
speed-up the investingation and fix of this issue.

Thanks

  Andrea