This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: Kawa 1.13 compilation problem, possible regression
On 02/04/2013 10:27 AM, Matthieu Vachon wrote:
Hi,
I'm currently porting our current Kawa codebase from version 1.7.91 to
the latest and greatest 1.13. Since I saw that an Ant Kawa task was
now available, I thought I could give it a try to incorporate it in
our build process.
First, I thought it was distributed into the pre-compile jar archive
but I was wrong. So, I downloaded the source to compile it by hand.
Started my journey on Windows (via MinGW) but hit a problem right
after the configure phase where `nroff` is missing.
You can just build Kawa using ant:
http://www.gnu.org/software/kawa/Source-distribution.html#Build-Kawa-using-ant
That leaves behind: tools/gnu/kawa/ant/Kawac.class
I was not able to compile the scheme part of the Kawa project because
the compiler is getting out of Heap Space when trying to compile the
file `gui.scm`.
....
(compiling XML.scm to gnu.kawa.slib.XML)
(compiling XStrings.scm to gnu.kawa.slib.XStrings)
(compiling gui.scm to gnu.kawa.slib.gui)
gui.scm:152: internal error while compiling gui.scm
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:2760)
at java.util.Arrays.copyOf(Arrays.java:2734)
at java.util.ArrayList.ensureCapacity(ArrayList.java:167)
at java.util.ArrayList.addAll(ArrayList.java:474)
at gnu.expr.PushApply.forkNext(PushApply.java:276)
at gnu.expr.PushApply.forkPop(PushApply.java:284)
at gnu.expr.PushApply.visitIfExp(PushApply.java:138)
at gnu.expr.PushApply.visitIfExp(PushApply.java:23)
This is something I've seen but I haven't quite been able to
pin it down: Sometimes it seems a problem, but when I try to
narrow it down to when it happens, then it disappears.
However, I have a general idea how this can be fixed. The idea
is to replace this data-structure:
ArrayList<HashSet<LambdaExp>> canFinishCondition
by a Map<LambdaExp,IntNum>, where the IntNum result is a
bitmap of "paths that can finish". I have reason to believe
this would behave better, but the devil is in the details.
--
--Per Bothner
per@bothner.com http://per.bothner.com/