Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: Notesfiles $Revision: 1.6.2.17 $; site ea.UUCP Path: utzoo!linus!decvax!decwrl!amd!dual!zehntel!ihnp4!inuxc!pur-ee!uiucdcs!ea!mwm From: mwm@ea.UUCP Newsgroups: net.lang.lisp Subject: Bug in xlisp xequal function Message-ID: <6000004@ea.UUCP> Date: Sat, 13-Oct-84 02:52:00 EDT Article-I.D.: ea.6000004 Posted: Sat Oct 13 02:52:00 1984 Date-Received: Fri, 19-Oct-84 05:44:37 EDT Lines: 24 Nf-ID: #N:ea:6000004:000:749 Nf-From: ea!mwm Oct 13 01:52:00 1984 Notes don't seem to be getting this far, so I'm not sure if this is appreciated, but here goes anyway: After adding LET to xlisp, I turned up a bug in the xequal function (the internal version of EQUAL). If xequal gets called with one nil argument, it can drop core. I don't know how it worked before, and would like corraboration from others. The fix is to put in explicit tests for nil in xequal around line 250 in the file xllist.c, as so: if (xeq(arg1,arg2) return(TRUE); else <...> --- if (xeq(arg1,arg2) return(TRUE); if (arg1 == (struct node *) NULL) return arg2 == (struct node *) NULL ; if (arg2 == (struct node *) NULL) return FALSE ; <...> Am I lost? Comments by mail, please, due to the notes problem.