X-Git-Url: http://git.megacz.com/?p=org.ibex.core.git;a=blobdiff_plain;f=src%2Forg%2Fibex%2Fjs%2FParser.java;h=bcc50335171e9b670053b51229cbad55149d6e04;hp=c6c9d9e8e1c1b3e7ba7886e79beb410456b0a0a1;hb=14dcf4ac275ea25af9e7bb517e61a82d2b935d0d;hpb=e1a626a6cccf4846b90c98821f597429bf095d71 diff --git a/src/org/ibex/js/Parser.java b/src/org/ibex/js/Parser.java index c6c9d9e..bcc5033 100644 --- a/src/org/ibex/js/Parser.java +++ b/src/org/ibex/js/Parser.java @@ -431,8 +431,8 @@ class Parser extends Lexer implements ByteCodes { // Method calls are implemented by doing a GET_PRESERVE // first. If the object supports method calls, it will // return JS.METHOD - int n = parseArgs(b, 2); b.add(parserLine, GET_PRESERVE); + int n = parseArgs(b,0); b.add(parserLine, CALLMETHOD, JS.N(n)); break; } @@ -475,7 +475,7 @@ class Parser extends Lexer implements ByteCodes { switch (tok) { case LP: { // invocation (not grouping) - int n = parseArgs(b, 1); + int n = parseArgs(b,0); b.add(parserLine, CALL, JS.N(n)); break; } @@ -560,7 +560,7 @@ class Parser extends Lexer implements ByteCodes { i++; if (peekToken() != COMMA) { startExpr(b, NO_COMMA); - b.add(parserLine, SWAP, JS.N(pushdown)); + if(pushdown != 0) b.add(parserLine, SWAP, JS.N(pushdown)); if (peekToken() == RP) break; } consume(COMMA);