diff options
Diffstat (limited to 'op.c')
-rw-r--r-- | op.c | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -4783,17 +4783,24 @@ ck_fun(OP *o) I32 private = 0; /* is this op a FH constructor? */ if (is_handle_constructor(o,numargs)) { + flags = 0; /* Set a flag to tell rv2gv to vivify * need to "prove" flag does not mean something * else already - NI-S 1999/05/07 */ - flags = 0; - private = OPpDEREF; + private = OPpDEREF; +#if 0 + /* Helps with open($array[$n],...) + but is too simplistic - need to do selectively + */ + mod(kid,type); +#endif } kid->op_sibling = 0; kid = newUNOP(OP_RV2GV, flags, scalar(kid)); - if (private) + if (private) { kid->op_private |= private; + } } kid->op_sibling = sibl; *tokid = kid; |