Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!clyde.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!usc!samsung!uunet!sraco1!nisinaka From: nisinaka@sraco1.us.sra.co.jp ( Hello!! This is JaMira speaking ) Newsgroups: comp.lang.lisp.x Subject: Re: Possible bug: trouble with (mapcar '(lambda... )). Message-ID: Date: 26 Dec 90 18:05:19 GMT References: <467@oha.UUCP> Sender: usenet@sraco1.us.sra.CO.JP Organization: Software Research Associates, Inc., Japan. Lines: 43 In-reply-to: tony@oha.UUCP's message of 23 Dec 90 03:47:37 GMT In article <467@oha.UUCP> tony@oha.UUCP (Tony Olekshy) writes: >>I just spent way too long debugging: >> >> (mapcar '(lambda (son) (send son :rpt-output menu$width)) >> (reverse menu$sons)) I had a same problem, and *** xleval.c.orig Fri Jul 20 16:53:25 1990 --- xleval.c Fri Jul 20 16:54:24 1990 *************** *** 155,160 **** --- 155,163 ---- LVAL *oldargv,fun,val; int oldargc; + /* protect some pointers */ + xlsave1(fun); + /* get the function */ fun = xlfp[1]; *************** *** 204,209 **** --- 207,215 ---- /* remove the call frame */ xlsp = xlfp; xlfp = xlfp - (int)getfixnum(*xlfp); + + /* restore the stack */ + xlpop(); /* return the function value */ return (val); this works well so far. I hope this works for your case, too. -- Yosh Nishinaka (nisinaka@sra.co.jp) "One for all. All for one. Three for Five."