stage1 人工重构ast以及type部分 修复vm的UB行为
This commit is contained in:
1 parent
b0e6b406ac
commit
c06d7247bb
7 files changed
+142
-306
No files matched your search
+2
-1
@@ -99,9 +99,10 @@ static int spl_type_size(spl_type_t t) {
|
||||
|
||||
#define PUSH(v) \
|
||||
do { \
|
||||
spl_val_t _pv = (spl_val_t)(v); \
|
||||
if (vm->sp >= vm->config.max_stack_depth) \
|
||||
VM_ERROR("stack overflow"); \
|
||||
vm->stacks.data[(vm->sp)++] = (spl_val_t)(v); \
|
||||
vm->stacks.data[(vm->sp)++] = _pv; \
|
||||
} while (0)
|
||||
|
||||
#define POP() vm->stacks.data[--(vm->sp)]
|
||||
|
||||
Reference in new issue
Block a user