all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Can UNREAD completely undo READCHAR?
@ 2010-12-28 20:34 Leo
  2010-12-28 22:10 ` Andreas Schwab
  0 siblings, 1 reply; 3+ messages in thread
From: Leo @ 2010-12-28 20:34 UTC (permalink / raw
  To: emacs-devel

Hello all,

I tried the following experiment (as in the attached patch) and emacs
failed to dump. Any ideas? Thanks in advance.

(gdb) r -batch -l loadup
Starting program: /Users/Shared/emacs/src/temacs -batch -l loadup
Reading symbols for shared libraries .++++++++++++........................................................................................ done
Loading loadup.el (source)...
Using load-path (/Users/Shared/emacs/lisp)
Loading emacs-lisp/byte-run...
Invalid read syntax: "#"

Program exited with code 0377.
(gdb) bt
No stack.
(gdb) 


diff --git a/src/lread.c b/src/lread.c
index 94d47d5..e28e70a 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1664,7 +1664,7 @@ readevalloop (readcharfun, stream, sourcename, evalfun,
      Lisp_Object unibyte, readfun;
      Lisp_Object start, end;
 {
-  register int c;
+  register int c, c2;
   register Lisp_Object val;
   int count = SPECPDL_INDEX ();
   struct gcpro gcpro1, gcpro2, gcpro3, gcpro4;
@@ -1760,6 +1760,9 @@ readevalloop (readcharfun, stream, sourcename, evalfun,
 	  || c == 0x8a0)  /* NBSP */
 	goto read_next;
 
+      c2 = READCHAR;
+      UNREAD (c2);
+
       if (!NILP (Vpurify_flag) && c == '(')
 	{
 	  record_unwind_protect (unreadpure, Qnil);


Leo




^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: Can UNREAD completely undo READCHAR?
  2010-12-28 20:34 Can UNREAD completely undo READCHAR? Leo
@ 2010-12-28 22:10 ` Andreas Schwab
  2010-12-29  8:43   ` Leo
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2010-12-28 22:10 UTC (permalink / raw
  To: Leo; +Cc: emacs-devel

Leo <sdl.web@gmail.com> writes:

> I tried the following experiment (as in the attached patch) and emacs
> failed to dump. Any ideas? Thanks in advance.

You can unread at most one character.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Can UNREAD completely undo READCHAR?
  2010-12-28 22:10 ` Andreas Schwab
@ 2010-12-29  8:43   ` Leo
  0 siblings, 0 replies; 3+ messages in thread
From: Leo @ 2010-12-29  8:43 UTC (permalink / raw
  To: Andreas Schwab; +Cc: emacs-devel

On 2010-12-28 22:10 +0000, Andreas Schwab wrote:
> Leo <sdl.web@gmail.com> writes:
>
>> I tried the following experiment (as in the attached patch) and emacs
>> failed to dump. Any ideas? Thanks in advance.
>
> You can unread at most one character.
>
> Andreas.

Thanks.

Does that mean `load' can only test single char i.e. ; or spaces. If I
put #@3abc at the end of any lisp file, load produces an error. Do you
see a simple way of fixing this? (I want this so that a false feature
expression at the end of file won't cause any load error). Thank you.

Cheers,
Leo



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-12-29  8:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-28 20:34 Can UNREAD completely undo READCHAR? Leo
2010-12-28 22:10 ` Andreas Schwab
2010-12-29  8:43   ` Leo

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.