diff options
author | Nicholas Clark <nick@ccl4.org> | 2010-06-14 09:44:49 +0200 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2010-06-14 09:44:49 +0200 |
commit | 086d291379a28ceb3cd7cc6416747be8c426476b (patch) | |
tree | 65cd76e65283592688e76e7f00528c3407c3ecff /pp_sys.c | |
parent | f4adce6b773b2b6071e0d1627f4dce6ec0c3caa7 (diff) | |
download | perl-086d291379a28ceb3cd7cc6416747be8c426476b.tar.gz |
Note why pp_tie can't use call_method() for a package name.
Plus a test that would fail if it did.
Diffstat (limited to 'pp_sys.c')
-rw-r--r-- | pp_sys.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -855,8 +855,10 @@ PP(pp_tie) call_method(methname, G_SCALAR); } else { - /* Not clear why we don't call call_method here too. - * perhaps to get different error message ? + /* Can't use call_method here, else this: fileno FOO; tie @a, "FOO" + * will attempt to invoke IO::File::TIEARRAY, with (best case) the + * wrong error message, and worse case, supreme action at a distance. + * (Sorry obfuscation writers. You're not going to be given this one.) */ STRLEN len; const char *name = SvPV_nomg_const(*MARK, len); |