[net.sources] XLISP bug

mwm@ea.UUCP (07/26/84)

#N:ea:12000003:000:852
ea!mwm    Jul 25 21:55:00 1984

I know this isn't the "correct" place to post this, but I can't think of a
better one to reach the people who need to see it. If you have a better one,
*send me mail*.

On to the point. In the file xlfio.c, which was in part 2 of the xlisp
code, near the end of the function xlfgets (which is near the end of the
file), the line:
	strcat(buf);
should read:
	strcat(str->n_str, buf);

Caveat: I did not verify that this was a bug, but it sure looks like one.
Lint complained about it, so I changed it to what it "obviously" should be.
The new version *does* work.

Request: Should someone get this code working on a "broken" C compiler (one
with pointers longer than ints), please get in contact with me. I want such
a version.  Conversely, if you want such a beast, let me know, and I'll
tell you if I finish my port or here from someone else.

	<mike

goldberg@uiucdcs.UUCP (07/29/84)

#R:ea:12000003:uiucdcs:12600019:000:952
uiucdcs!goldberg    Jul 29 14:57:00 1984


While attempting to port XLisp to our Pyramid, I encountered an illegal
instruction in a longjmp from routine xlabort when I typed in an unknown
function.  This was due to the fact that XLisp declares it's jump buffer
to be char[6], which appears to work ok on the VAX.  On the Pyramid however,
it does not.  I redeclared it to be of type jmp_buf as defined in
/usr/include/setjmp.h.  Diffs of xlisp.c follow.  They may be off by a few
lines due to RCS header info which I have added.

				Phil Goldberg
				goldberg@uiuc
			     goldberg.uiuc@csnet
		 ...!{ihnp4,convex,pur-ee}!uiucdcs!goldberg

--------------------------------------------------------------------------
1c1
< static char *XLispId = "$Header: xlisp.c,v 1.1 84/07/28 18:56:45 goldberg Exp $";
---
> static char *XLispId = "$Header: xlisp.c,v 1.2 84/07/28 19:29:42 goldberg Exp $";
36c36
< static char ljmp[6];
---
> static jmp_buf ljmp;	/* PRG '84 -- char ljmp[6] bombs on Pyramid */