diff options
author | Graham Barr <gbarr@ti.com> | 1998-05-15 11:47:28 +0000 |
---|---|---|
committer | Tim Bunce <TimBunce@ig.ac.uk> | 1998-05-15 11:47:28 +0000 |
commit | eb0338755aa9eed0eb2540b9b640b5ab337dcc2e (patch) | |
tree | d798c87f00b14f37dd2ee94c0db81fdf44d428da | |
parent | dcf6088bb1fec02aa649f566083201f09550ae4f (diff) | |
download | perl-eb0338755aa9eed0eb2540b9b640b5ab337dcc2e.tar.gz |
"Add hook to tie %! to external Errno.pm module (not included)"
Msg-ID: <355080CD.1111BC81@ti.com>
Files: gv.c
p4raw-id: //depot/maint-5.004/perl@981
-rw-r--r-- | gv.c | 17 |
1 files changed, 16 insertions, 1 deletions
@@ -740,13 +740,28 @@ I32 sv_type; #endif goto magicalize; + case '!': + if(len > 1) + break; + if(sv_type == SVt_PVHV) { + HV* stash = gv_stashpvn("Errno",5,FALSE); + if(!stash || !(gv_fetchmethod(stash, "TIEHASH"))) { + dSP; + PUTBACK; + perl_require_pv("Errno.pm"); + SPAGAIN; + stash = gv_stashpvn("Errno",5,FALSE); + if (!stash || !(gv_fetchmethod(stash, "TIEHASH"))) + croak("%! is not avaliable on this machine"); + } + } + goto magicalize; case '#': case '*': if (dowarn && len == 1 && sv_type == SVt_PV) warn("Use of $%s is deprecated", name); /* FALL THROUGH */ case '[': - case '!': case '^': case '~': case '=': |