optimizations could sometimes bypass bareword check
Gurusamy Sarathy [Mon, 2 Aug 1999 18:18:37 +0000 (18:18 +0000)]
p4raw-id: //depot/perl@3897

op.c

diff --git a/op.c b/op.c
index 313cce7..9f92232 100644 (file)
--- a/op.c
+++ b/op.c
@@ -1890,7 +1890,8 @@ Perl_fold_constants(pTHX_ register OP *o)
        goto nope;              /* Don't try to run w/ errors */
 
     for (curop = LINKLIST(o); curop != o; curop = LINKLIST(curop)) {
-       if (curop->op_type != OP_CONST &&
+       if ((curop->op_type != OP_CONST ||
+            (curop->op_private & OPpCONST_BARE)) &&
            curop->op_type != OP_LIST &&
            curop->op_type != OP_SCALAR &&
            curop->op_type != OP_NULL &&