From: Chip Salzenberg Date: Thu, 6 Mar 1997 15:46:37 +0000 (+1200) Subject: Warn on %{+undef} and @{+undef} X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=d83e6520878f26ddb2592ab5b8b67eb482e51ea6;p=p5sagit%2Fp5-mst-13.2.git Warn on %{+undef} and @{+undef} --- diff --git a/pp.c b/pp.c index 59a6ea7..863478d 100644 --- a/pp.c +++ b/pp.c @@ -139,6 +139,8 @@ PP(pp_rv2gv) if (op->op_flags & OPf_REF || op->op_private & HINT_STRICT_REFS) DIE(no_usym, "a symbol"); + if (dowarn) + warn(warn_uninit); RETSETUNDEF; } sym = SvPV(sv, na); @@ -181,6 +183,8 @@ PP(pp_rv2sv) if (op->op_flags & OPf_REF || op->op_private & HINT_STRICT_REFS) DIE(no_usym, "a SCALAR"); + if (dowarn) + warn(warn_uninit); RETSETUNDEF; } sym = SvPV(sv, na); diff --git a/pp_hot.c b/pp_hot.c index f2864c0..d9a4f07 100644 --- a/pp_hot.c +++ b/pp_hot.c @@ -412,7 +412,6 @@ PP(pp_print) PP(pp_rv2av) { dSP; dPOPss; - AV *av; if (SvROK(sv)) { @@ -450,6 +449,8 @@ PP(pp_rv2av) if (op->op_flags & OPf_REF || op->op_private & HINT_STRICT_REFS) DIE(no_usym, "an ARRAY"); + if (dowarn) + warn(warn_uninit); if (GIMME == G_ARRAY) RETURN; RETPUSHUNDEF; @@ -487,9 +488,7 @@ PP(pp_rv2av) PP(pp_rv2hv) { - dSP; dTOPss; - HV *hv; if (SvROK(sv)) { @@ -527,6 +526,8 @@ PP(pp_rv2hv) if (op->op_flags & OPf_REF || op->op_private & HINT_STRICT_REFS) DIE(no_usym, "a HASH"); + if (dowarn) + warn(warn_uninit); if (GIMME == G_ARRAY) { SP--; RETURN;