Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/17/84; site godot.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!ihnp4!godot!massar From: massar@godot.UUCP (J.P. Massar) Newsgroups: net.emacs Subject: CCA Emacs Elisp bug fix Message-ID: <975@godot.UUCP> Date: Thu, 14-Feb-85 11:52:02 EST Article-I.D.: godot.975 Posted: Thu Feb 14 11:52:02 1985 Date-Received: Fri, 15-Feb-85 05:16:13 EST Distribution: net Organization: Thinking Machines, Cambridge, MA Lines: 44 Bug: Any attempt to call an Elisp edefun-ed function from within Elisp by referring to it using '#F' syntax would could Emacs to crash or do bizzare things. Repeat by: M-X Evaluate Elisp Form$(#F"Evaluate Elisp Form") which should just prompt for 'form?' but instead dies immediately. Fix: in the elisp subdirectory in alone.c: --------------------------------------------------------------------------- *** alone.c~ Sun Dec 9 16:30:44 1984 --- alone.c Thu Feb 14 03:11:45 1985 *************** *** 892,898 fprintf(dbgfp, "Address of function to call is: %u\n",em_fp_i); #endif DEBUG ! ival = (*em_fp_i)(numargval,'\0',emacsarg1,emacsarg2,emacsarg3); #if DEBUG fprintf(dbgfp,"Integer result of call is: %d\n",ival); --- 892,898 ----- fprintf(dbgfp, "Address of function to call is: %u\n",em_fp_i); #endif DEBUG ! ival = (*em_fp_i)(numargval,-1,emacsarg1,emacsarg2,emacsarg3); #if DEBUG fprintf(dbgfp,"Integer result of call is: %d\n",ival); ------------------------------------------------------------------------------ The function call above which is being fixed is invoking the routine elispexec which previously was looking for the name of the function to invoke in the wrong place due to the incorrect argument. This is probably the cause of a lot of 'inexplicable' bugs. JP Massar 1hnp4!godot!massar massar@cca-unix