aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShinya Sato <shinnya.sato@gmail.com>2022-02-12 18:04:29 +0900
committerShinya Sato <shinnya.sato@gmail.com>2022-02-12 18:04:29 +0900
commit4fd48c19f7af3e9f036e7e635186e2379fd18d8e (patch)
tree3efaf07909ce7779982f6224439d29af29f1c830 /src
parentdd42be26b1b394441b253e7d0c6b8b60f0c810ad (diff)
parent3631c77c8bb9697a002c902b560c686b2b090bdb (diff)
downloadinpla-4fd48c19f7af3e9f036e7e635186e2379fd18d8e.tar.gz
inpla-4fd48c19f7af3e9f036e7e635186e2379fd18d8e.zip
Merge branch 'develop'
Diffstat (limited to 'src')
-rw-r--r--src/inpla.y11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/inpla.y b/src/inpla.y
index 51e2692..42a041c 100644
--- a/src/inpla.y
+++ b/src/inpla.y
@@ -41,8 +41,8 @@
//#define COUNT_MKAGENT // count of execution fo mkagent
-#define VERSION "0.7.2"
-#define BUILT_DATE "9 Feb. 2022"
+#define VERSION "0.7.2-1"
+#define BUILT_DATE "12 Feb. 2022"
// ------------------------------------------------------------------
@@ -5720,6 +5720,7 @@ int CompileIfSentenceFromAST(Ast *if_sentence_top) {
// Compilation of then_branch
+ IMCode_genCode0(OP_BEGIN_BLOCK);
CmEnv_clear_localnamePtr(); // 局所変数の割り当て番号を初期化
if (!CompileIfSentenceFromAST(then_branch)) return 0;
@@ -6467,8 +6468,8 @@ void *ExecCode(int mode, VirtualMachine *restrict vm, void *restrict *code) {
E_LOAD:
// puts("load src dest");
pc++;
- i = reg[(unsigned long)code[pc++]];
- reg[(unsigned long)code[pc++]] = i;
+ a1 = reg[(unsigned long)code[pc++]];
+ reg[(unsigned long)code[pc++]] = a1;
goto *code[pc];
@@ -6610,7 +6611,7 @@ void *ExecCode(int mode, VirtualMachine *restrict vm, void *restrict *code) {
// puts("EQI src1 int dest");
pc++;
{
- int i = FIX2INT(reg[(unsigned long)code[pc++]]);
+ int i = reg[(unsigned long)code[pc++]];
int j = (unsigned long)code[pc++];
if (i==j) {