This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
Re: java.lang.NullPointerException when loading SSAX.scm inkawa-1.7
On Mon, 07 Jul 2003 02:04:55 -0700
Jim White <jim@pagesmiths.com> wrote:
> Stan Pinte wrote:
> > On Fri, 04 Jul 2003 16:09:27 -0700
> > Jim White <jim@pagesmiths.com> wrote:
> >
> >>Stan Pinte wrote:
> >>
> >>>when loading SSAX.scm, I am getting the following:
> >>>
> >>>java.lang.NullPointerException
> >>> at gnu.expr.LambdaExp.allocChildClasses(LambdaExp.java:936)
> >>>...
> >>
> >>The problem occurs at the second "test". If there is just one then it
> >>compiles OK.
> >
> > any idea why? It could be great to have Kawa run the test suite without any problem!
>
> It has something to do with this code at gnu.expr.LambdaExp(935):
>
> LambdaExp owner = this;
> while (owner.heapFrame == null)
> owner = owner.outerLambda();
> closureEnvType = (ClassType) owner.heapFrame.getType();
>
> Which might need to look something like this:
>
> LambdaExp owner = this;
> while (owner.heapFrame == null) {
> owner = owner.outerLambda();
> if (owner == null) {
> // Do something about the heap frame situation.
> }
> }
> closureEnvType = (ClassType) owner.heapFrame.getType();
>
> But I don't know enough about Kawa compilation to understand if this
> where the fix goes or if this is just symptomatic. It has something to
> do with the closure situation with siblings and let forms but that's all
> Greek to me.
>
> Per is on vacation and I'm sure he'll provide a fix as soon as he gets
> back in a few days. If you had to make this run before then, you could
> rewrite the code to just put each test in its own lambda or something.
> A macro could do the job one way or another I'm sure.
Thanks a lot for your help, Jim!!!
I'll wait for Per coming back from vacations without problems, as I can use other Scheme systems with SSAX in the meantime, but it would be great to have it fixed!
thanks again.
Stan.
>
> Jim
> --
> "I love deadlines. I love the whooshing sound they make as they fly by."
> -- Douglas Adams
>
>