From da6f63bb3d0bb15a667878e268f9fdcb69891be0 Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Mon, 11 Jun 2007 05:51:19 +0000 Subject: [PATCH] Fix calling convention by managing top of stack and adjusting on way in and out of function calls. --- src/main/java/lua/Builtin.java | 16 ++++++++-------- src/main/java/lua/io/Closure.java | 6 +++--- src/main/java/lua/value/LTable.java | 7 ++++--- src/main/java/lua/value/LValue.java | 3 +-- src/test/res/test3.lua | 3 ++- 5 files changed, 18 insertions(+), 17 deletions(-) diff --git a/src/main/java/lua/Builtin.java b/src/main/java/lua/Builtin.java index 1aea5ae6..034a995a 100644 --- a/src/main/java/lua/Builtin.java +++ b/src/main/java/lua/Builtin.java @@ -31,23 +31,23 @@ final class Builtin extends LFunction { } // perform a lua call - public int luaStackCall(StackState state, int base, int nargs) { + public void luaStackCall(StackState state, int base) { switch ( id ) { case PRINT: - for ( int i=0; i 0 ) - System.out.print( "\t" ); - System.out.print( String.valueOf(state.stack[base+1+i]) ); + for ( int i=base+1, n=state.top; i