diff options
author | David Mitchell <davem@iabyn.com> | 2017-03-17 13:15:13 +0000 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2017-03-17 14:10:14 +0000 |
commit | 7bfe3bfdd4427cdc26a2581cc633e3fb5582ce70 (patch) | |
tree | 6445abb6d82da6875a1e12b79c25d7c39b64e9fc /universal.c | |
parent | a5555695d6543e0b1a47bec20245db4878556a6d (diff) | |
download | perl-7bfe3bfdd4427cdc26a2581cc633e3fb5582ce70.tar.gz |
PERL_GLOBAL_STRUCT_PRIVATE: fix PL_isa_DOES
I added the global string constant PL_isa_DOES recently. This caused
t/porting/libperl.t to fail under -DPERL_GLOBAL_STRUCT_PRIVATE builds.
This commit makes PL_isa_DOES be declared and defined in a similar
way to other such global constants. This is pure cargo-culting - I have no
real idea of the point of all the EXTCONST, INIT and globvar.sym stuff.
Diffstat (limited to 'universal.c')
-rw-r--r-- | universal.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/universal.c b/universal.c index 88835f9d78..be39310da7 100644 --- a/universal.c +++ b/universal.c @@ -184,11 +184,6 @@ The SV can be a Perl object or the name of a Perl class. #include "XSUB.h" -/* a special string address whose value is "isa", but which perl knows - * to treat as if it were really "DOES" when printing the method name in - * the "Can't call method '%s'" error message */ -char PL_isa_DOES[] = "isa"; - bool Perl_sv_does_sv(pTHX_ SV *sv, SV *namesv, U32 flags) { @@ -232,7 +227,7 @@ Perl_sv_does_sv(pTHX_ SV *sv, SV *namesv, U32 flags) methodname = newSV_type(SVt_PV); SvLEN(methodname) = 0; SvCUR(methodname) = strlen(PL_isa_DOES); - SvPVX(methodname) = PL_isa_DOES; + SvPVX(methodname) = (char *)PL_isa_DOES; /* discard 'const' qualifier */ SvPOK_on(methodname); sv_2mortal(methodname); call_sv(methodname, G_SCALAR | G_METHOD); |