http://qs321.pair.com?node_id=11118056


in reply to Re^2: ${^POSTMATCH} problem
in thread ${^POSTMATCH} problem

Yeah, The behaviour of ($foo = 1) . ($foo = 2) . ($foo = 3) used to be roughly equivalent to

my $x = ""; $x .= ( $foo = 1 ); $x .= ( $foo = 2 ); $x .= ( $foo = 3 );

But now, it's roughly equivalent to

my $x = join("", ( $foo = 1 ), ( $foo = 2 ), ( $foo = 3 ), );

In both cases, $foo itself is being put on the stack. The difference is when it's used (before it has a chance to be changed by later assignments, or after).