summaryrefslogtreecommitdiff
path: root/gv.c
diff options
context:
space:
mode:
authorTony Cook <tony@develop-help.com>2022-09-30 10:45:43 +1000
committerTony Cook <tony@develop-help.com>2022-10-24 15:47:34 +1100
commit64d117434d554b7227e13abbc3ba99ff266b8484 (patch)
tree8f3ef05eff73e3caa1f6b6260afe175b41746929 /gv.c
parent919edbb8310cf6016231ef655a86f17242efcc75 (diff)
downloadperl-64d117434d554b7227e13abbc3ba99ff266b8484.tar.gz
only negative cache a method lookup if we look at UNIVERSAL
Diffstat (limited to 'gv.c')
-rw-r--r--gv.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gv.c b/gv.c
index 556878505c..d14eaa0655 100644
--- a/gv.c
+++ b/gv.c
@@ -983,7 +983,7 @@ S_gv_fetchmeth_internal(pTHX_ HV* stash, SV* meth, const char* name, STRLEN len,
}
}
- if (topgv && GvREFCNT(topgv) == 1) {
+ if (topgv && GvREFCNT(topgv) == 1 && !(flags & GV_NOUNIVERSAL)) {
/* cache the fact that the method is not defined */
GvCVGEN(topgv) = topgen_cmp;
}