summaryrefslogtreecommitdiff
path: root/gv.c
diff options
context:
space:
mode:
authorJeff Pinyan <japhy@pobox.com>2001-09-03 08:36:20 -0400
committerJarkko Hietaniemi <jhi@iki.fi>2001-09-04 13:06:39 +0000
commitb4a9608f3398418748dafc4c84f559eb17989184 (patch)
tree550cc7e454ac3d6a0340d2029dbb150ff47e1d50 /gv.c
parente0b236fe86fb5fced9182a324010842ee938ca4c (diff)
downloadperl-b4a9608f3398418748dafc4c84f559eb17989184.tar.gz
@& sets PL_sawampersand
Message-ID: <Pine.GSO.4.21.0109031235240.7601-100000@crusoe.crusoe.net> p4raw-id: //depot/perl@11863
Diffstat (limited to 'gv.c')
-rw-r--r--gv.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/gv.c b/gv.c
index 33e6cd20e9..2967fbe957 100644
--- a/gv.c
+++ b/gv.c
@@ -814,20 +814,17 @@ Perl_gv_fetchpv(pTHX_ const char *nambeg, I32 add, I32 sv_type)
break;
case '&':
- if (len > 1)
- break;
- PL_sawampersand = TRUE;
- goto ro_magicalize;
-
case '`':
- if (len > 1)
- break;
- PL_sawampersand = TRUE;
- goto ro_magicalize;
-
case '\'':
- if (len > 1)
- break;
+ if (
+ len > 1 ||
+ sv_type == SVt_PVAV ||
+ sv_type == SVt_PVHV ||
+ sv_type == SVt_PVCV ||
+ sv_type == SVt_PVGV ||
+ sv_type == SVt_PVFM ||
+ sv_type == SVt_PVIO
+ ) { break; }
PL_sawampersand = TRUE;
goto ro_magicalize;