Nothing is making use of this in at present in the affected cases.
What this code does is mark an op as being folded so that 1+2 can
be distinguished from 3. qq"foo" was erroneously being marked as
folded, unlike "foo". Constant folding is part of the way that
quote-like operators are implemented. Conceptually there is no
folding here, so we should pretend it did not happen. This was a
partial cause of bug #116086.
else
{
newop = newSVOP(OP_CONST, 0, MUTABLE_SV(sv));
- newop->op_folded = 1;
+ if (type != OP_STRINGIFY) newop->op_folded = 1;
}
op_getmad(o,newop,'f');
return newop;