emacs-devel
[Top][All Lists]
Advanced

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

Re: Regression in dump-emacs-portable


From: Lynn Winebarger
Subject: Re: Regression in dump-emacs-portable
Date: Thu, 16 Feb 2023 23:10:48 -0500

On Thu, Feb 16, 2023 at 8:29 PM Lynn Winebarger <owinebar@gmail.com> wrote:
>  sh-script generates a "weird pseudovector" message in 376ms
> > time emacs -Q -batch --eval '(load "sh-script")' --eval 
> > '(dump-emacs-portable "test-sh-script.pdmp")'
This seems to be related to whatever object "treesit-font-lock-rules" creates.
The moral seems to be to create tests of each type of object a
user-visible lisp function might create to get quick test cases.
=============>sh-script-test<======================
(require 'treesit)

(defvar font-lock-comment-face)
(defvar sh-mode--treesit-operators
  '("|" "|&" "||" "&&" ">" ">>" "<" "<<" "<<-" "<<<" "==" "!=" ";&" ";;&")
  "A list of `sh-mode' operators to fontify.")

(defvar sh-mode--treesit-keywords
  '("case" "do" "done" "elif" "else" "esac" "export" "fi" "for"
    "function" "if" "in" "unset" "while" "then")
  "Minimal list of keywords that belong to tree-sitter-bash's grammar.

Some reserved words are not recognize to keep the grammar
simpler.  Those are identified with regex-based filtered queries.

\(See `sh-mode--treesit-other-keywords' and
`sh-mode--treesit-settings').")

(defvar sh-mode--treesit-settings
  (treesit-font-lock-rules
   :feature 'comment
   :language 'bash
   '((comment) @font-lock-comment-face))
  "Tree-sitter font-lock settings for `sh-mode'.")
======================================================================
Loading /home/owinebar/sh-script-test.el (source)...
Dumping fingerprint:
30c4a01f07c30c32913a3c578aa6871d7af188212b14e2f9c5e3717f80b9ab43

Error: error ("unsupported object type in dump: weird pseudovector")
  mapbacktrace(#f(compiled-function (evald func args flags) #<bytecode
-0x13b91d456517831>))
  debug-early-backtrace()
  debug-early(error (error "unsupported object type in dump: weird
pseudovector"))
  dump-emacs-portable("test.pdmp")
  eval((dump-emacs-portable "test.pdmp") t)
  command-line-1(("--eval" "(load \"~/sh-script-test\")" "--eval"
"(dump-emacs-portable \"test.pdmp\")"))
  command-line()
  normal-top-level()
unsupported object type in dump: weird pseudovector

real 0m0.415s
user 0m0.343s
sys 0m0.068s



reply via email to

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