@@ -5657,11 +5657,13 @@ void compile_node(buffer_t *gbuf, buffer_t *buf, list_t *ctx, table_t *ltab,
if (n) {
node_t *r = mexpr_eval(n);
- if (r->tag == N_EXPRSTMT)
- r = r->a;
+ if (r != NULL) {
+ if (r->tag == N_EXPRSTMT)
+ r = r->a;
- if (r != NULL && IS_EXPR(r))
- n = r;
+ if (IS_EXPR(r))
+ n = r;
+ }
compile_node(gbuf, buf, ctx, ltab, lstk, sstk, lbl, n);
} else