summaryrefslogtreecommitdiff
path: root/regen/opcodes
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2014-11-08 10:41:23 -0800
committerFather Chrysostomos <sprout@cpan.org>2014-11-08 11:45:02 -0800
commit85f22e05efca6c0fbc035b09cb5f0e6e1a4ca717 (patch)
tree850a3c8dba948c33ee2680eaa1ae96fabebd6e33 /regen/opcodes
parent9e319cc4fd53e7fda8d24a3e32cedcd89cb2f66c (diff)
downloadperl-85f22e05efca6c0fbc035b09cb5f0e6e1a4ca717.tar.gz
Remove OA_DANGEROUS from non-integer postdec/inc
OA_DANGEROUS indicates that temporary copies may need to be made in list assignment, to handle things like: ($a, $b) = ($b, $a); In other words, an op type is flagged with OA_DANGEROUS if its return values could occur elsewhere on the stack. While pp_postinc may return a lexical scalar, that only happens when the OPpTARGET_MY optimisation is happening; and aassign_common_vars in op.c checks specifically for that. Otherwise, it only returns a mortal or target, so it is not OA_DANGEROUS.
Diffstat (limited to 'regen/opcodes')
-rw-r--r--regen/opcodes8
1 files changed, 4 insertions, 4 deletions
diff --git a/regen/opcodes b/regen/opcodes
index fc8aa2215a..6d0e41729b 100644
--- a/regen/opcodes
+++ b/regen/opcodes
@@ -111,10 +111,10 @@ preinc preincrement (++) ck_lfun dIs1 S
i_preinc integer preincrement (++) ck_lfun dis1 S
predec predecrement (--) ck_lfun dIs1 S
i_predec integer predecrement (--) ck_lfun dis1 S
-postinc postincrement (++) ck_lfun dIsT1 S
-i_postinc integer postincrement (++) ck_lfun disT1 S
-postdec postdecrement (--) ck_lfun dIsT1 S
-i_postdec integer postdecrement (--) ck_lfun disT1 S
+postinc postincrement (++) ck_lfun IsT1 S
+i_postinc integer postincrement (++) ck_lfun isT1 S
+postdec postdecrement (--) ck_lfun IsT1 S
+i_postdec integer postdecrement (--) ck_lfun isT1 S
# Ordinary operators.