diff options
-rw-r--r-- | src/compiler/compiler.lm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/compiler.lm b/src/compiler/compiler.lm index d0864b4..1ca7705 100644 --- a/src/compiler/compiler.lm +++ b/src/compiler/compiler.lm @@ -433,8 +433,10 @@ write_declaration(d:fspec::declaration::type, index:int) if (!c) { write_ins(INS_PUSHR, g_fcr) - write_ins(INS_PUSH, index) - write_ins(INS_OP, g_ops->find('#+')) + if (index != 0) { + write_ins(INS_PUSH, index) + write_ins(INS_OP, g_ops->find('#+')) + } write_ins(INS_IO, d.primitive.bits) } else { write_ins(INS_PUSH, g_offs->find(%c)) |