--- a/src/JavaMethod.st Fri Oct 12 09:25:57 2012 +0000
+++ b/src/JavaMethod.st Fri Oct 12 09:59:33 2012 +0000
@@ -437,9 +437,11 @@
JavaMethod numArgsFromSignature:'(BB)S'
JavaMethod numArgsFromSignature:'()V'
JavaMethod numArgsFromSignature:'(Ljava/util/ArrayList<*>;)V'
+ JavaMethod numArgsFromSignature:'(L)V'
+
"
- "Modified (comment): / 13-08-2011 / 00:59:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (comment): / 12-10-2012 / 11:49:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
numArgsFromStream:s
@@ -1110,24 +1112,6 @@
"Created: / 25-10-2011 / 10:50:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-numLocals
- ^super numVars.
-"/ numLocals isNil ifTrue:[^ 0].
-"/ ^ numLocals
-
- "Modified: / 3.1.1998 / 21:15:38 / cg"
-!
-
-numVars
- |n|
-
- "/ a Java-stackframe includes the args in the locals
- n := self numLocals - self numArgs.
- ^ n
-
- "Modified: / 13.1.1998 / 17:34:37 / cg"
-!
-
numberOfJavaArgs
^(accessFlags bitAnd: 16r00FF0000) rightShift: 16.
@@ -1706,16 +1690,19 @@
byteCode := codeBytes.
"/ numStack := max_stack.
"/ numLocals := max_locals.
- super numberOfVars:max_locals.
+ super numberOfVars:max_locals - self numArgs - (self isStatic ifTrue:[0] ifFalse:[1]).
super stackSize:max_stack.
+
+
"/ self displayString printNL.
"/ ' nStack: ' print. numStack print.
"/ ' nLocal: ' print. numLocals print.
"/ ' u1: ' print. unknown1 print.
"/ ' u2: ' print. unknown2 printNL.
- "Modified: 1.8.1997 / 00:08:32 / cg"
+ "Modified: / 01-08-1997 / 00:08:32 / cg"
+ "Modified: / 12-10-2012 / 11:46:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
setDescriptor:aString