bugKawa - Bugs: bug #18846, Cannot inherit from non-static...

 
 

bug #18846: Cannot inherit from non-static class

Submitter:  Margus Freudenthal <margus>
Submitted:  Mon 22 Jan 2007 01:04:36 PM UTC
   
 
Category:  Code generation Severity:  3 - Normal
Item Group:  Compile-time exception Status:  Fixed
Privacy:  Public Assigned to:  bothner
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Thu 01 Nov 2007 04:19:26 AM UTC, comment #3: 

Fix checked in.

Per Bothner <bothner>
Group administrator
Tue 20 Mar 2007 06:15:48 AM UTC, comment #2: 

I checked in a fix.  Please verify that it works for you.

I may do a little more tinkering in this area before I'm fully satisfied.  For example, I'd like to try to slightly optimize "static link access".

Per Bothner <bothner>
Group administrator
Fri 02 Mar 2007 04:44:57 PM UTC, comment #1: 

I'm looking into this.  It's not a quick fix, since it's tied in with the changes to define-class and define-simple-class and
class vs type.  But it is the primary issue I'm focusing on right now.

Per Bothner <bothner>
Group administrator
Mon 22 Jan 2007 01:04:36 PM UTC, original submission:  

When I try to inherit from non-static class, I get a compile-time exception.

When I try to compile attached file, I get the following exception:

(compiling non-static-class.scm to non$Mnstatic$Mnclass)
non-static-class.scm:8: internal error while compiling non-static-class.scm
java.lang.Error: popType called with empty stack BooChild.<init>()void
        at gnu.bytecode.CodeAttr.popType(CodeAttr.java:316)
        at gnu.bytecode.CodeAttr.emitInvokeMethod(CodeAttr.java:1316)
        at gnu.bytecode.CodeAttr.emitInvokeSpecial(CodeAttr.java:1346)
        at gnu.expr.Compilation.generateConstructor(Compilation.java:1141)
        at gnu.expr.ClassExp.compile(ClassExp.java:475)
        at gnu.expr.ClassInitializer.<init>(ClassInitializer.java:16)
        at gnu.expr.ClassExp.compileSetField(ClassExp.java:645)
        at gnu.expr.SetExp.compile(SetExp.java:170)
        at gnu.expr.Expression.compileNotePosition(Expression.java:157)
        at gnu.expr.Expression.compileWithPosition(Expression.java:128)
        at gnu.kawa.functions.AppendValues.compile(AppendValues.java:49)
        at gnu.expr.ApplyExp.compile(ApplyExp.java:171)
        at gnu.expr.ApplyExp.compile(ApplyExp.java:110)
        at gnu.expr.Expression.compileWithPosition(Expression.java:146)
        at gnu.expr.LambdaExp.compileBody(LambdaExp.java:1501)
        at gnu.expr.Compilation.generateBytecode(Compilation.java:2005)
        at gnu.expr.Compilation.process(Compilation.java:1879)
        at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:302)
        at gnu.expr.ModuleInfo.loadByStages(ModuleInfo.java:287)
        at kawa.repl.compileFiles(repl.java:773)
        at kawa.repl.processArgs(repl.java:426)
        at kawa.repl.main(repl.java:828)

I am using SVN version from the 1.8.91 time.

Margus Freudenthal <margus>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #11819:  non-static-class.scm added by margus (172B - application/octet-stream - Code sample.)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by bothner (Posted a comment)
  • -email is unavailable- added by margus (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2007-11-01 bothner Open/ClosedOpen Closed
    2007-03-20 bothner StatusConfirmed Fixed
    2007-03-02 bothner StatusNone Confirmed
        Assigned toNone bothner
    2007-01-22 margus Attached File- Added non-static-class.scm, #11819

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code