summaryrefslogtreecommitdiff
path: root/regen/opcode.pl
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2014-09-19 18:14:01 +0100
committerDavid Mitchell <davem@iabyn.com>2014-09-19 18:14:01 +0100
commit16a6edfa0e11bf585bf5bf62d8299a7a34d45319 (patch)
treecd85ab637fda52ac0997eb174780ef138fd8b54c /regen/opcode.pl
parentb4941db24e5b5bf41a100f8944f5845de2bdf8ab (diff)
downloadperl-16a6edfa0e11bf585bf5bf62d8299a7a34d45319.tar.gz
move OPpTARGET_MY comments from opcode.pl
There is a section in regen/opcode.pl explaining when its okay to use the T flag / OPpTARGET_MY define. Move that text to regen/op_private, at the spot where it defines OPpTARGET_MY. It's more likely to be seen there.
Diffstat (limited to 'regen/opcode.pl')
-rwxr-xr-xregen/opcode.pl55
1 files changed, 0 insertions, 55 deletions
diff --git a/regen/opcode.pl b/regen/opcode.pl
index 38c235fbd1..93fdc06fd7 100755
--- a/regen/opcode.pl
+++ b/regen/opcode.pl
@@ -1213,58 +1213,3 @@ foreach ($oc, $on, $pp, $oprivpm) {
read_only_bottom_close_and_rename($_);
}
-# Some comments about 'T' opcode classifier:
-
-# Safe to set if the ppcode uses:
-# tryAMAGICbin, tryAMAGICun, SETn, SETi, SETu, PUSHn, PUSHTARG, SETTARG,
-# SETs(TARG), XPUSHn, XPUSHu,
-
-# Unsafe to set if the ppcode uses dTARG or [X]RETPUSH[YES|NO|UNDEF]
-
-# lt and friends do SETs (including ncmp, but not scmp)
-
-# Additional mode of failure: the opcode can modify TARG before it "used"
-# all the arguments (or may call an external function which does the same).
-# If the target coincides with one of the arguments ==> kaboom.
-
-# pp.c pos substr each not OK (RETPUSHUNDEF)
-# substr vec also not OK due to LV to target (are they???)
-# ref not OK (RETPUSHNO)
-# trans not OK (dTARG; TARG = sv_newmortal();)
-# ucfirst etc not OK: TMP arg processed inplace
-# quotemeta not OK (unsafe when TARG == arg)
-# each repeat not OK too due to list context
-# pack split - unknown whether they are safe
-# sprintf: is calling do_sprintf(TARG,...) which can act on TARG
-# before other args are processed.
-
-# Suspicious wrt "additional mode of failure" (and only it):
-# schop, chop, postinc/dec, bit_and etc, negate, complement.
-
-# Also suspicious: 4-arg substr, sprintf, uc/lc (POK_only), reverse, pack.
-
-# substr/vec: doing TAINT_off()???
-
-# pp_hot.c
-# readline - unknown whether it is safe
-# match subst not OK (dTARG)
-# grepwhile not OK (not always setting)
-# join not OK (unsafe when TARG == arg)
-
-# Suspicious wrt "additional mode of failure": concat (dealt with
-# in ck_sassign()), join (same).
-
-# pp_ctl.c
-# mapwhile flip caller not OK (not always setting)
-
-# pp_sys.c
-# backtick glob warn die not OK (not always setting)
-# warn not OK (RETPUSHYES)
-# open fileno getc sysread syswrite ioctl accept shutdown
-# ftsize(etc) readlink telldir fork alarm getlogin not OK (RETPUSHUNDEF)
-# umask select not OK (XPUSHs(&PL_sv_undef);)
-# fileno getc sysread syswrite tell not OK (meth("FILENO" "GETC"))
-# sselect shm* sem* msg* syscall - unknown whether they are safe
-# gmtime not OK (list context)
-
-# Suspicious wrt "additional mode of failure": warn, die, select.