X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=gv.c;h=62afd9163ebef97874a1ac28ddfd4c949ce84c54;hb=2f9daededa74ef1264bd2c46743008f84bff0cfc;hp=7f6b2ce67a562bd6c0a8b516180a9909419926d8;hpb=bf81aadd817bdea29720b072eef945df2da8463b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/gv.c b/gv.c index 7f6b2ce..62afd91 100644 --- a/gv.c +++ b/gv.c @@ -636,6 +636,14 @@ I32 sv_type; sv_setpv(GvSV(gv),chopset); goto magicalize; + case '?': + if (len > 1) + break; +#ifdef COMPLEX_STATUS + sv_upgrade(GvSV(gv), SVt_PVLV); +#endif + goto magicalize; + case '#': case '*': if (dowarn && len == 1 && sv_type == SVt_PV) @@ -643,7 +651,6 @@ I32 sv_type; /* FALL THROUGH */ case '[': case '!': - case '?': case '^': case '~': case '=': @@ -666,7 +673,6 @@ I32 sv_type; case '\017': case '\t': case '\020': - case '\023': case '\024': case '\027': if (len > 1) @@ -1310,11 +1316,6 @@ int flags; res=POPs; PUTBACK; - if (notfound) { - /* sv_2mortal(res); */ - return NULL; - } - if (postpr) { int ans; switch (method) {