bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#4270: 23.1.50; strange behaviour of a preloaded code containg macro


From: npostavs
Subject: bug#4270: 23.1.50; strange behaviour of a preloaded code containg macro
Date: Tue, 23 Aug 2016 21:24:01 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

Kenichi Handa <handa@m17n.org> writes:

> When I put the byte-compiled site-load.el that contains the
> following code in .../emacs/lisp directory, and rebuild
> emacs, that file is preloaded.
>
> ;; ------------------------------------------------------------
> (eval-when-compile
>   (put 'testsym 'char-table-extra-slots 0)
> )
>
> (defmacro testmacro ()
>   (make-char-table 'testsym))
>
> (defvar testdata (testmacro))
>
> (defun testfunc ()
>   (cons testdata (testmacro)))
> ;; ------------------------------------------------------------
>
> When I call testfunc, it returns a cons of a char-table
> (correct) and an empty vector (incorrect).
>
> When I build much more complicated char-table in testmacro,
> the cdr of the return value of testfunc is an invalid lisp
> object that causes segfault.
>
> When I remove site-load.elc and rebuild emacs (site-load.el
> is preloaded), everything works correctly
>
> This happens with Emacs 22, Emacs 23.1, and the trunk.

In current master, I get

Don't know how to purify: #^[nil nil testsym nil nil nil nil nil nil nil nil 
nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil 
nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil 
nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil]

while dumping (seems to have been the case since e3b83880 "*
src/alloc.c: Keep track of symbols referenced from pure space
(bug#17168)...").

So would that be considered fixed?





reply via email to

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