# New Ticket Created by Sam S.
# Please include the string: [perl #128054]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=128054 >
Golfed example:
say ("{$_}") for <aa bb>;
Expected behavior: Print the lines "aa" and "bb".
Actual behavior: Prints two empty lines, and emits two "Use of uninitialized
value $_ of type Any in string context" warnings.
By comparison, all of the following variations works fine:
say "{$_}" for <aa bb>;
say ("$_") for <aa bb>;
say ("$($_)") for <aa bb>;
say ("{$_}" for <aa bb>);
for <aa bb> { say ("{$_}") };
This means that the problem only occurs when all of the following situations
coincide:
1) The topic $_ is set by a statement modifier (and not, say, the block form of
`given`/`for`).
2) The string is enclosed in parens which *don't* also enclose the statement
modifier.
3) The string has a {}-interpolated expression which tries to access $_.
This failure mode is very similar to one in RT #126569, so the two bugs are
probably related.