|
|
|
@ -2024,7 +2024,8 @@ STATIC void compile_lambdef(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
|
|
|
|
compile_funcdef_lambdef(comp, this_scope, pns->nodes[0], PN_varargslist);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
STATIC void compile_or_and_test(compiler_t *comp, mp_parse_node_struct_t *pns, bool cond) {
|
|
|
|
|
STATIC void compile_or_and_test(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
|
|
|
|
bool cond = MP_PARSE_NODE_STRUCT_KIND(pns) == PN_or_test;
|
|
|
|
|
uint l_end = comp_next_label(comp);
|
|
|
|
|
int n = MP_PARSE_NODE_STRUCT_NUM_NODES(pns);
|
|
|
|
|
for (int i = 0; i < n; i += 1) {
|
|
|
|
@ -2036,14 +2037,6 @@ STATIC void compile_or_and_test(compiler_t *comp, mp_parse_node_struct_t *pns, b
|
|
|
|
|
EMIT_ARG(label_assign, l_end);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
STATIC void compile_or_test(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
|
|
|
|
compile_or_and_test(comp, pns, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
STATIC void compile_and_test(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
|
|
|
|
compile_or_and_test(comp, pns, false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
STATIC void compile_not_test_2(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
|
|
|
|
compile_node(comp, pns->nodes[0]);
|
|
|
|
|
EMIT_ARG(unary_op, MP_UNARY_OP_NOT);
|
|
|
|
|