aboutsummaryrefslogtreecommitdiff
path: root/opcode.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>1994-12-06 12:27:18 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>1994-12-06 12:27:18 -0200
commitce4fb88b34421bc4426db7985314ba7ed757a284 (patch)
tree921c78d349d466295e30d467fce40cf7d60b7c3c /opcode.c
parente742d542534637c7c64e7acd461512c80646a475 (diff)
downloadlua-ce4fb88b34421bc4426db7985314ba7ed757a284.tar.gz
lua-ce4fb88b34421bc4426db7985314ba7ed757a284.tar.bz2
lua-ce4fb88b34421bc4426db7985314ba7ed757a284.zip
opcode PUSHSELF has a parameter that indicates the method to be called
Diffstat (limited to 'opcode.c')
-rw-r--r--opcode.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/opcode.c b/opcode.c
index a6945ced..64dcca68 100644
--- a/opcode.c
+++ b/opcode.c
@@ -3,7 +3,7 @@
3** TecCGraf - PUC-Rio 3** TecCGraf - PUC-Rio
4*/ 4*/
5 5
6char *rcs_opcode="$Id: opcode.c,v 3.22 1994/11/23 14:31:11 roberto Stab roberto $"; 6char *rcs_opcode="$Id: opcode.c,v 3.23 1994/11/30 21:20:37 roberto Exp roberto $";
7 7
8#include <setjmp.h> 8#include <setjmp.h>
9#include <stdio.h> 9#include <stdio.h>
@@ -803,7 +803,10 @@ static int lua_execute (Byte *pc, int base)
803 803
804 case PUSHSELF: 804 case PUSHSELF:
805 { 805 {
806 Object receiver = *(top-2); 806 Object receiver = *(top-1);
807 CodeWord code;
808 get_word(code,pc);
809 tag(top) = LUA_T_STRING; tsvalue(top++) = lua_constant[code.w];
807 pushsubscript(); 810 pushsubscript();
808 *(top++) = receiver; 811 *(top++) = receiver;
809 break; 812 break;