[Top][All Lists]

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

Re: [PATCH] Unicode Lisp reader escapes

From: Luc Teirlinck
Subject: Re: [PATCH] Unicode Lisp reader escapes
Date: Wed, 10 May 2006 16:37:56 -0500 (CDT)

Eli Zaretskii wrote:

   > It read ambiguously to me. ``Any Lisp object that you intend to refer to
   > again'' could be one that you intend to refer to in the bodies of the
   > functions you call.

   Can someone in the know (Richard?) state a clear rule?  I think the
   ELisp manual should be unequivocal about the GCPRO issue.

Reading in the Elisp manual:

    This is necessary whenever you call `Feval' or anything that can
    directly or indirectly call `Feval'.  At such a time, any Lisp
    object that you intend to refer to again must be protected

I have always interpreted this as meaning that as long as Feval is not
directly or indirectly called, there is no problem whatsoever.  If
Feval gets called, directly or indirectly, the memory for the object
may have been freed by gc, unless the object is protected some way or
the other, for instance by a GCPPRO.  If the object was not protected
in any way, then if after the call to Feval it gets referenced any way
whatsoever, directly or in the functions you call, from C or from
Lisp, trouble can result because its memory may have been freed.

Is there any _other_ way to understand the above quote from the Elisp
manual or am I just completely misunderstanding the issue?  If the
description in the above paragraph would not be accurate, then the
text would indeed be very misleading.



reply via email to

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