This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #87708] $tied % $tied and $tied * $tied under use integer
authorFather Chrysostomos <sprout@cpan.org>
Wed, 6 Apr 2011 20:04:26 +0000 (13:04 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Wed, 6 Apr 2011 20:04:26 +0000 (13:04 -0700)
commit96b6b87fc202a490b35ba140684083e484959f72
tree009643ca7cb001dee3ebb556be70f61eb298cfaa
parente62ca0f9ce708db51e000573ffdc696e61eabdf7
[perl #87708] $tied % $tied and $tied * $tied under use integer

This is just part of #87708.

This fixes the % and * operators under â€˜use integer’ when the same
tied scalar is used for both operands and returns two different val-
ues. Before this commit, get-magic would be called only once and
the same value used. In 5.12.x * just worked but the operands were
swapped for %.

It turns out that every operator using the dPOPTOPiirl_nomg macro
needs exactly the same treatment, so this commit eliminates the
dPOPTOPiirl_halfmg macro added a few commits ago and modifies
dPOPTOPiirl_nomg to do was it was doing. This should be perfectly
safe, as dPOPTOPiirl_nomg has not been in a stable release (and is
only for internal use anyway).
pp.c
pp.h
t/lib/warnings/9uninit
t/op/tie_fetch_count.t