summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--embed.fnc8
-rw-r--r--gv.c19
2 files changed, 23 insertions, 4 deletions
diff --git a/embed.fnc b/embed.fnc
index 7b15f433e2..2981e2ddce 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -959,8 +959,8 @@ ApR |GV* |gv_autoload_pvn |NULLOK HV* stash|NN const char* name \
|STRLEN len|U32 flags
Cp |void |gv_check |NN HV* stash
AbpD |void |gv_efullname |NN SV* sv|NN const GV* gv
-ApMb |void |gv_efullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix
-Ap |void |gv_efullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain
+ApdMb |void |gv_efullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix
+Apd |void |gv_efullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain
Adp |GV* |gv_fetchfile |NN const char* name
Adp |GV* |gv_fetchfile_flags|NN const char *const name|const STRLEN len\
|const U32 flags
@@ -989,8 +989,8 @@ Apx |GV* |gv_fetchmethod_pvn_flags|NN HV* stash|NN const char* name \
|const STRLEN len|U32 flags
Adp |GV* |gv_fetchpv |NN const char *nambeg|I32 flags|const svtype sv_type
AbpD |void |gv_fullname |NN SV* sv|NN const GV* gv
-ApMb |void |gv_fullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix
-Ap |void |gv_fullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain
+ApdMb |void |gv_fullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix
+Apd |void |gv_fullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain
: Used in scope.c
pxoe |GP * |newGP |NN GV *const gv
pX |void |cvgv_set |NN CV* cv|NULLOK GV* gv
diff --git a/gv.c b/gv.c
index 720e736fdf..cf904c0c08 100644
--- a/gv.c
+++ b/gv.c
@@ -2676,6 +2676,25 @@ Perl_gv_fetchpvn_flags(pTHX_ const char *nambeg, STRLEN full_len, I32 flags,
return gv;
}
+/*
+=for apidoc gv_fullname3
+=for apidoc_item gv_fullname4
+=for apidoc_item gv_efullname3
+=for apidoc_item gv_efullname4
+
+Place the full package name of C<gv> into C<sv>. The C<gv_e*> forms return
+instead the effective package name (see L</HvENAME>).
+
+If C<prefix> is non-NULL, it is considered to be a C language NUL-terminated
+string, and the stored name will be prefaced with it.
+
+The other difference between the functions is that the C<*4> forms have an
+extra parameter, C<keepmain>. If C<true> an initial C<main::> in the name is
+kept; if C<false> it is stripped. With the C<*3> forms, it is always kept.
+
+=cut
+*/
+
void
Perl_gv_fullname4(pTHX_ SV *sv, const GV *gv, const char *prefix, bool keepmain)
{