bug-kawa
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-kawa] [bug #39151] ArrayOutOfBoundsException in Variable.freeLocal


From: Matthieu Vachon
Subject: [Bug-kawa] [bug #39151] ArrayOutOfBoundsException in Variable.freeLocal
Date: Mon, 03 Jun 2013 14:09:17 +0000
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36

URL:
  <http://savannah.gnu.org/bugs/?39151>

                 Summary: ArrayOutOfBoundsException in Variable.freeLocal
                 Project: Kawa
            Submitted by: maoueh
            Submitted on: Mon 03 Jun 2013 02:09:16 PM GMT
                Category: None
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

The test case attached does not compile on r7254 but was compiling fine one
revision before (r7253). With the test case attached, two exceptions is shown.
One about an ArrayIndexOutOfBounds and another about AppendValues
InternalError. The second one (AppendValues InternalError) has been reported
as an independent bug (#39150). Fixing this one (#39150) could potentially
resolve this onem but I'm not sure.

I did not dig further on the cause of the error. But I tried to isolate the
exact changeset that has caused this error. The changeset is in patch
`PushApplySubsetRewriteIfLet.patch` which
introduces an optimization for If-Let statement. Removing this sole
optimzation fix the problem but I really don't know why. Later this week, I
will remove the optimization from latest version and see if I can compile my
real from which the test case has been built.

The test case is the minimum to reproduce the error. Trying to change about
any line will results in not producing the exception.

I will try to dig it further this week. I attached the test case I use to
reproduce the problem and the exact changeset that cause the issue.

Regards,
Matt

P.S. Here the start of the stack trace for the record:


Here start of stack trace:
 caught exception in inline-compiler for boolean
java.util.LinkedList.add(java.lang.Object) -
java.lang.ArrayIndexOutOfBoundsException: 21
   gnu.bytecode.Variable.freeLocal(Variable.java:142)
   gnu.bytecode.Scope.freeLocals(Scope.java:153)
   gnu.bytecode.CodeAttr.popScope(CodeAttr.java:652)
   gnu.expr.ScopeExp.popScope(ScopeExp.java:34)
   gnu.expr.LetExp.compile(LetExp.java:194)
   gnu.expr.Expression.compileNotePosition(Expression.java:156)
   gnu.expr.Expression.compileWithPosition(Expression.java:127)
   gnu.expr.LetExp.compile(LetExp.java:163)
   gnu.expr.Expression.compileNotePosition(Expression.java:156)
   gnu.expr.Expression.compileWithPosition(Expression.java:127)
   gnu.expr.ApplyExp.compile(ApplyExp.java:333)
   gnu.expr.ApplyExp.compile(ApplyExp.java:132)
   gnu.expr.Expression.compileNotePosition(Expression.java:156)
   gnu.expr.PrimProcedure.compileArgs(PrimProcedure.java:588)
   gnu.expr.PrimProcedure.compile(PrimProcedure.java:707)
...
 



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Mon 03 Jun 2013 02:09:17 PM GMT  Name: free-local-exception.scm  Size:
3kB   By: maoueh
test case + exact changeset (git patch)
<http://savannah.gnu.org/bugs/download.php?file_id=28236>
-------------------------------------------------------
Date: Mon 03 Jun 2013 02:09:17 PM GMT  Name: PushApplySubsetRewriteIfLet.patch
 Size: 1kB   By: maoueh
test case + exact changeset (git patch)
<http://savannah.gnu.org/bugs/download.php?file_id=28237>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?39151>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]