Fix bugs found in testing
diff --git a/include/instructions.h b/include/instructions.h
index db5a921..1da3ffc 100644
--- a/include/instructions.h
+++ b/include/instructions.h
@@ -100,6 +100,7 @@
#define BC_INST_OP_REL_EQUAL ((uint8_t) '=')
#define BC_INST_OP_REL_LESS_EQ ((uint8_t) ';')
#define BC_INST_OP_REL_GREATER_EQ ((uint8_t) '?')
+#define BC_INST_OP_REL_NOT_EQ ((uint8_t) '~')
#define BC_INST_OP_REL_LESS ((uint8_t) '<')
#define BC_INST_OP_REL_GREATER ((uint8_t) '>')
@@ -113,7 +114,7 @@
#define BC_INST_OP_ASSIGN_POWER ((uint8_t) '`')
#define BC_INST_OP_ASSIGN_MULTIPLY ((uint8_t) '{')
#define BC_INST_OP_ASSIGN_DIVIDE ((uint8_t) '}')
-#define BC_INST_OP_ASSIGN_MODULUS ((uint8_t) '~')
+#define BC_INST_OP_ASSIGN_MODULUS ((uint8_t) '@')
#define BC_INST_OP_ASSIGN_PLUS ((uint8_t) '[')
#define BC_INST_OP_ASSIGN_MINUS ((uint8_t) ']')
#define BC_INST_OP_ASSIGN ((uint8_t) ',')
diff --git a/src/bc/parse.c b/src/bc/parse.c
index 60b521e..6a66434 100644
--- a/src/bc/parse.c
+++ b/src/bc/parse.c
@@ -197,6 +197,7 @@
BC_INST_OP_REL_EQUAL,
BC_INST_OP_REL_LESS_EQ,
BC_INST_OP_REL_GREATER_EQ,
+ BC_INST_OP_REL_NOT_EQ,
BC_INST_OP_REL_LESS,
BC_INST_OP_REL_GREATER,
diff --git a/src/bc/program.c b/src/bc/program.c
index 9534f54..5feec75 100644
--- a/src/bc/program.c
+++ b/src/bc/program.c
@@ -297,7 +297,7 @@
goto const_err;
}
- s = bc_vec_init(&p->expr_stack, sizeof(BcNum), bc_result_free);
+ s = bc_vec_init(&p->expr_stack, sizeof(BcResult), bc_result_free);
if (s) {
goto expr_err;