[net.lang.lisp] problem w/ declare localf in Frantz

jbn@wdl1.UUCP (09/24/85)

     We've seen this too; it is strictly a M68000 problem; the VAX compiler
works fine.  Both the Berkley and Franz, Inc. compilers have this bug.  It
sounds like you have it narrowed down further than we do; we found it when
moving a large Lisp program to a SUN from a VAX, and didn't have time to
track it down.  If you have Franz, Inc. support you ought to be able to get
them to fix it if you can generate a small test case.
      If someone can construct a small test case, please post it.

					John Nagle

jbn@wdl1.UUCP (09/25/85)

      Further confirmation; I pulled all the localf declarations from my
program, and the core dumps stopped, but I am still getting ``Illegal
memory reference, you are advised to (reset)'' on one of the more
complex test cases, so we aren't at the bottom of this yet.  Again, the
program works fine on a VAX, but fails on SUNs.  (It also works interpretively
on the SUNs, but that's so slow as to be useless.)

				John Nagle

smh@mit-eddie.UUCP (Steven M. Haflich) (10/02/85)

Your problem with "Frantz" sounds like a dereference of a zero pointer.
In the VAX implementation nil is stored at location zero, so erroneous
references through a null pointer see nil.  In the SUN implementation,
location zero is unmapped, so zero references get a bus error.  Does
this help?

You should first understand that Franz exists in many versions.  The
last "public domain" release from Berkeley was Opus 38.91, now about two
years old.  The latest release from Franz Inc. is (approximately) Opus
42.15.  It makes little sense to discuss bugs without specifying both
the machine and version number.

jbn@wdl1.UUCP (10/06/85)

     I don't think that it is a simple dereference of a null pointer;
removing ``localf'' declarations definitely improves program behavior,
and it shouldn't; the program even runs correctly in interpreted mode.
It fails for us on Opus 38.39 on SUNs but not on VAXen; we had a version
from Franz, Inc. in recently for evaluation, and it failed there too.
But our test case is complex and I haven't tried to pin it down more closely,
hoping that someone else will fix this problem or at least find a small
test case.


					John Nagle