diff options
author | Reini Urban <rurban@x-ray.at> | 2013-08-27 11:32:02 -0500 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2013-08-27 20:28:58 -0700 |
commit | 38d2280fe891657ac2f57fd277d378edccd5ac11 (patch) | |
tree | 0b7c9d0076b91ff33be3af52f56828882e90f614 /ext/B | |
parent | 47369ecd8eb3c98b9f75d1e3203e8b85f78eaaec (diff) | |
download | perl-38d2280fe891657ac2f57fd277d378edccd5ac11.tar.gz |
B::INVLIST isa B::PV (for now)
If the compiler stumbles over a B::INVLIST treat it as B::PV
and do not error.
Also restore rudimentary B versioning support for BIND and INVLIST.
Diffstat (limited to 'ext/B')
-rw-r--r-- | ext/B/B.pm | 1 | ||||
-rw-r--r-- | ext/B/B.xs | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/ext/B/B.pm b/ext/B/B.pm index 20794fa42e..4d0df907c7 100644 --- a/ext/B/B.pm +++ b/ext/B/B.pm @@ -48,6 +48,7 @@ push @B::EXPORT_OK, (qw(minus_c ppname save_BEGINs @B::PVNV::ISA = qw(B::PVIV B::NV); @B::PVMG::ISA = 'B::PVNV'; @B::REGEXP::ISA = 'B::PVMG' if $] >= 5.011; +@B::INVLIST::ISA = 'B::PV' if $] >= 5.019; @B::PVLV::ISA = 'B::GV'; @B::BM::ISA = 'B::GV'; @B::AV::ISA = 'B::PVMG'; diff --git a/ext/B/B.xs b/ext/B/B.xs index 62496e2c68..279be53d5c 100644 --- a/ext/B/B.xs +++ b/ext/B/B.xs @@ -21,13 +21,18 @@ typedef FILE * InputStream; static const char* const svclassnames[] = { "B::NULL", +#if PERL_VERSION < 19 + "B::BIND", +#endif "B::IV", "B::NV", #if PERL_VERSION <= 10 "B::RV", #endif "B::PV", +#if PERL_VERSION >= 19 "B::INVLIST", +#endif "B::PVIV", "B::PVNV", "B::PVMG", |