🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #99321

(none)

#99321
From: nixpbe!uucp
Date: Sun, 14 Oct 1990 22:09
46 lines
2029 bytes
>From uucp Sun Oct 14 22:12 MET 1990 remote from nixbln
To: nixpbe!unido!gnu-emacs-bug
Path: nixbln!nixpbe!nixbur!linus!agate!apple!usc!wuarchive!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!tut.cis.ohio-state.edu!BREEZE.BELLCORE.COM!mlittman
From: mlittman@BREEZE.BELLCORE.COM (Michael L. Littman)
Newsgroups: gnu.emacs.bug
Subject: Backquote results in different behavior when byte-compiled
Message-ID: <9010091456.AA18404@breeze.bellcore.com>
Date: 9 Oct 90 14:56:40 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 32


System: Sparc 18.55

 I am using a macro to generate a list which I then tamper with using
"setcar".  Before I byte-compile, "setcar" does not produce a
side-effect to the macro.  After I compile, it does.

 If I define the macro any other way, I get consistent results: either
"setcar" produces side-effects in the compiled version AND the
uncompiled version, or it "setcar" produces no side-effects in the
compiled version OR the uncompiled version.

; Program:

(defmacro nil-list ()
  (` (cons '(nil) nil)))

(defun change-nils (true)
  (let ((a (nil-list)))
    (if true
	(setcar (car a) 'up)
      )
    a))

; Test...

(change-nils t)  =>  ((up))
(change-nils nil) => ((nil))	; No side effect
(byte-compile 'change-nils)
(change-nils t) =>   ((up))
(change-nils nil) => ((up))	; Side effect

-Michael
Technical Details
Message-ID: <9010142209.AX16021@unido.informatik.uni-dortmund.de>
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!tut.cis.ohio-state.edu!relay.eu.net!nixpbe!uucp

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,b5ec764478ce47e0
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1990-10-14 15:09:27 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!tut.cis.ohio-state.edu!relay.eu.net!nixpbe!uucp
From: nixpbe!uucp@relay.eu.net
Newsgroups: gnu.emacs.bug
Subject: (none)
Message-ID: <9010142209.AX16021@unido.informatik.uni-dortmund.de>
Date: 14 Oct 90 22:09:27 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 46
Approved: bug-gnu-emacs@prep.ai.mit.edu
Posted: Sun Oct 14 23:09:27 1990