GNU bug report logs - #30373
Support finalizers for functions created in dynamic modules

Previous Next

Package: emacs;

Reported by: Samir Jindel <sjindel <at> google.com>

Date: Tue, 6 Feb 2018 21:26:01 UTC

Severity: wishlist

Done: Philipp Stephani <p.stephani2 <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Pip Cet <pipcet <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 30373 <at> debbugs.gnu.org, p.stephani2 <at> gmail.com, sjindel <at> google.com
Subject: bug#30373: [PATCH] Implement finalizers for module functions (Bug#30373)
Date: Fri, 3 Jan 2020 20:49:35 +0000
[Message part 1 (text/plain, inline)]
On Fri, Jan 3, 2020 at 8:13 PM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Pip Cet <pipcet <at> gmail.com>
> > Date: Fri, 3 Jan 2020 18:53:46 +0000
> > Cc: Philipp Stephani <p.stephani2 <at> gmail.com>, 30373 <at> debbugs.gnu.org, sjindel <at> google.com
> >
> > If I'm reading the test correctly, it depends on garbage-collect
> > actually collecting an unreferenced vector; since our GC's
> > conservative, that might not be working for you, if a word that
> > happens to look like a reference to the vector is still on the stack.
> > (Or it might be something else entirely, but I don't think the test as
> > it stands is correct).
>
> You are probably right, because I see the same failure on GNU/Linux,
> in an x86_64 unoptimized build:

I see it too. Fprogn keeps the value of the first sub-form alive while
evaluating the second one.

We can "fix" Fprogn to discard val early in unoptimized builds, and
that might make GC behavior slightly less surprising.

But it won't properly fix this test.
[0001-Make-progn-make-huge-vector-garbage-collect-behave-a.patch (text/x-patch, attachment)]

This bug report was last modified 5 years and 139 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.