From c2a084dff98f234f8a9bc2215bfd406da87e15c9 Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Thu, 24 May 2012 09:24:11 +0900 Subject: wrong number of arguments for self-assignments --- src/codegen.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/codegen.c') diff --git a/src/codegen.c b/src/codegen.c index 087dd3165..5e2b7083f 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -1234,25 +1234,25 @@ codegen(codegen_scope *s, node *tree, int val) int idx = new_msym(s, sym); if (name[0] == '+' && strlen(name) == 1) { - genop(s, MKOP_ABC(OP_ADD, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_ADD, cursp(), idx, 1)); } else if (name[0] == '-' && strlen(name) == 1) { - genop(s, MKOP_ABC(OP_SUB, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_SUB, cursp(), idx, 1)); } else if (name[0] == '<' && strlen(name) == 1) { - genop(s, MKOP_ABC(OP_LT, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_LT, cursp(), idx, 1)); } else if (name[0] == '<' && strlen(name) == 2 && name[1] == '=') { - genop(s, MKOP_ABC(OP_LE, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_LE, cursp(), idx, 1)); } else if (name[0] == '>' && strlen(name) == 1) { - genop(s, MKOP_ABC(OP_GT, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_GT, cursp(), idx, 1)); } else if (name[0] == '>' && strlen(name) == 2 && name[1] == '=') { - genop(s, MKOP_ABC(OP_GE, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_GE, cursp(), idx, 1)); } else { - genop(s, MKOP_ABC(OP_SEND, cursp(), idx, 2)); + genop(s, MKOP_ABC(OP_SEND, cursp(), idx, 1)); } } gen_assignment(s, tree->car, cursp(), val); -- cgit v1.2.3