This is the mail archive of the kawa@sourceware.cygnus.com mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

VerifyError re. Object.getClass().getName()


Using a cvs snapshot from 3/7:

; whatis.scm

(define (whatis obj)
  (invoke ((primitive-virtual-method
	    <java.lang.Object> 'getClass <java.lang.Class> ())
	   obj)
	  'getName '()))


#|kawa:1|# (load "/tmp/whatis.scm")
/tmp/whatis.scm:2:4: warning - no possibly applicable method `getName' in java.lang.Class
java.lang.VerifyError
        at java.lang.ClassLoader.resolveClass(ClassLoader.java)
        at gnu.bytecode.ArrayClassLoader.loadClass(ArrayClassLoader.java:106)
        at gnu.expr.LambdaExp.evalToClass(LambdaExp.java:1280)
        at gnu.expr.LambdaExp.eval(LambdaExp.java:1325)
        at gnu.expr.ModuleExp.evalModule(ModuleExp.java:35)
        at kawa.Shell.run(Shell.java:81)
        at kawa.standard.load.loadSource(load.java:124)
        at kawa.standard.load.loadSource(load.java:102)
        at kawa.standard.load.apply(load.java:173)
        at kawa.standard.load.apply2(load.java:149)
        at kawa.standard.load.apply1(load.java:140)
        at gnu.mapping.Procedure1.applyN(Procedure1.java:49)
        at gnu.expr.ApplyExp.eval(ApplyExp.java:38)
        at gnu.expr.ModuleExp.evalModule(ModuleExp.java:34)
        at kawa.Shell.run(Shell.java:81)
        at kawa.Shell.run(Shell.java:31)
        at kawa.Shell.run(Shell.java:18)
        at kawa.repl.main(repl.java:355)


The same error occurred when I changed the code as follows:

(define (whatis obj)
  ((primitive-virtual-method
    <java.lang.Class> 'getName <string> ())
   ((primitive-virtual-method
     <java.lang.Object> 'getClass <java.lang.Class> ())
    obj)))

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]