diff options
author | Damien George <damien.p.george@gmail.com> | 2019-07-25 12:10:45 +1000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2019-09-26 14:37:26 +1000 |
commit | 6ce7c051e853e631802aedd39cbffb14dc3f123c (patch) | |
tree | f503032cee6eb6375de62d1a0c9d878a6e616478 /py/parse.c | |
parent | 78e0e76b4f91e7c51d757779814447eeaab54f9a (diff) | |
download | micropython-6ce7c051e853e631802aedd39cbffb14dc3f123c.tar.gz micropython-6ce7c051e853e631802aedd39cbffb14dc3f123c.zip |
py/lexer: Reorder operator tokens to match corresponding binary ops.
Diffstat (limited to 'py/parse.c')
-rw-r--r-- | py/parse.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/py/parse.c b/py/parse.c index 66110e7c3d..946a3b1b34 100644 --- a/py/parse.c +++ b/py/parse.c @@ -645,19 +645,17 @@ STATIC bool fold_constants(parser_t *parser, uint8_t rule_id, size_t num_args) { } mp_token_kind_t tok = MP_PARSE_NODE_LEAF_ARG(peek_result(parser, i)); static const uint8_t token_to_op[] = { + MP_BINARY_OP_LSHIFT, + MP_BINARY_OP_RSHIFT, MP_BINARY_OP_ADD, MP_BINARY_OP_SUBTRACT, MP_BINARY_OP_MULTIPLY, - 255,//MP_BINARY_OP_POWER, - 255,//MP_BINARY_OP_TRUE_DIVIDE, MP_BINARY_OP_FLOOR_DIVIDE, + 255,//MP_BINARY_OP_TRUE_DIVIDE, MP_BINARY_OP_MODULO, - 255,//MP_BINARY_OP_LESS - MP_BINARY_OP_LSHIFT, - 255,//MP_BINARY_OP_MORE - MP_BINARY_OP_RSHIFT, + 255,//MP_BINARY_OP_POWER, }; - mp_binary_op_t op = token_to_op[tok - MP_TOKEN_OP_PLUS]; + mp_binary_op_t op = token_to_op[tok - MP_TOKEN_OP_DBL_LESS]; if (op == (mp_binary_op_t)255) { return false; } |