diff options
Diffstat (limited to 'interpret.h')
-rw-r--r-- | interpret.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/interpret.h b/interpret.h index bba3cbb5..9d3c1087 100644 --- a/interpret.h +++ b/interpret.h @@ -268,7 +268,7 @@ uninitialized_scalar: r = r->var_value; } - if (r->type == Node_val) + if (r->type == Node_val || r->type == Node_typedregex) UPREF(r); PUSH(r); break; @@ -991,6 +991,8 @@ arrayfor: r = POP_STRING(); unref(m->re_exp); m->re_exp = r; + } else if (m->type == Node_typedregex) { + UPREF(m); } PUSH(m); break; |