diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2019-09-20 10:11:34 -0400 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2019-09-20 10:11:34 -0400 |
commit | d0e50fa8fbfc5de2c0d938671a7dab982163409d (patch) | |
tree | 541e8bd1e7a82b91dfcbe503d788c406cc56ff6f /eval.c | |
parent | a3ff9a3526dbc9ed785017835352d83edae8c8ac (diff) |
cleaning up stuff; mul & div
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 10 |
1 files changed, 9 insertions, 1 deletions
@@ -41,7 +41,9 @@ static bool eval_expr_as_int(Expression *e, Integer *i) { switch (e->binary.op) { case BINARY_PLUS: - case BINARY_MINUS: { + case BINARY_MINUS: + case BINARY_MUL: + case BINARY_DIV: { Integer lhs, rhs; if (!eval_expr_as_int(e->binary.lhs, &lhs)) return false; if (!eval_expr_as_int(e->binary.rhs, &rhs)) return false; @@ -52,6 +54,12 @@ static bool eval_expr_as_int(Expression *e, Integer *i) { case BINARY_MINUS: *i = lhs - rhs; return true; + case BINARY_MUL: + *i = lhs * rhs; + return true; + case BINARY_DIV: + *i = lhs / rhs; + return true; default: assert(0); return false; } } |