- if (actual_type == OP_number && expected_type == OP_boolean)
- *n = expr_allocate_unary (e, OP_NUM_TO_BOOLEAN, *n);
+ if (actual_type == OP_number && expected_type == EXPR_BOOLEAN)
+ *n = expr_allocate_binary (e, OP_NUM_TO_BOOLEAN, *n,
+ expr_allocate_string (e, ss_empty ()));