From 2f34f9d4825ac9262ece854fc4c50479f4838ff8 Mon Sep 17 00:00:00 2001 From: Ilya Zakharevich Date: Mon, 2 Mar 1998 16:36:02 -0500 Subject: Make autouse -w-safe p4raw-id: //depot/perl@781 --- op.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'op.c') diff --git a/op.c b/op.c index e30e874117..28e05f1c53 100644 --- a/op.c +++ b/op.c @@ -3332,7 +3332,10 @@ newSUB(I32 floor, OP *o, OP *proto, OP *block) if (curstack == sortstack && sortcop == CvSTART(cv)) croak("Can't redefine active sort subroutine %s", name); const_sv = cv_const_sv(cv); - if (const_sv || dowarn) { + if (const_sv || dowarn && !(CvGV(cv) && GvSTASH(CvGV(cv)) + && HvNAME(GvSTASH(CvGV(cv))) + && strEQ(HvNAME(GvSTASH(CvGV(cv))), + "autouse"))) { line_t oldline = curcop->cop_line; curcop->cop_line = copline; warn(const_sv ? "Constant subroutine %s redefined" @@ -3527,7 +3530,9 @@ newXS(char *name, void (*subaddr) (CV *), char *filename) } else if (CvROOT(cv) || CvXSUB(cv) || GvASSUMECV(gv)) { /* already defined (or promised) */ - if (dowarn) { + if (dowarn && !(CvGV(cv) && GvSTASH(CvGV(cv)) + && HvNAME(GvSTASH(CvGV(cv))) + && strEQ(HvNAME(GvSTASH(CvGV(cv))), "autouse"))) { line_t oldline = curcop->cop_line; curcop->cop_line = copline; warn("Subroutine %s redefined",name); -- cgit v1.2.1