summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2008-12-27 20:54:01 +0000
committerNicholas Clark <nick@ccl4.org>2008-12-27 21:12:13 +0000
commit1e9bd1186a044d6e3506ed14fbe055b8f75f7641 (patch)
tree028b14693219816423205ba65c6c35edfeb166c4 /lib
parent9953ff723fac897df4afc6a69aaa7bfe5e8dc983 (diff)
downloadperl-1e9bd1186a044d6e3506ed14fbe055b8f75f7641.tar.gz
Move all mro:: XS functions from mro.c to ext/mro/mro.xs, except for
mro::method_changed_in(), which is used by constant.
Diffstat (limited to 'lib')
-rw-r--r--lib/overload.pm6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/overload.pm b/lib/overload.pm
index e5b2f97b6a..425da1bf05 100644
--- a/lib/overload.pm
+++ b/lib/overload.pm
@@ -1,6 +1,6 @@
package overload;
-our $VERSION = '1.06';
+our $VERSION = '1.07';
sub nil {}
@@ -104,6 +104,10 @@ sub AddrRef {
sub mycan { # Real can would leave stubs.
my ($package, $meth) = @_;
+ local $@;
+ local $!;
+ require mro;
+
my $mro = mro::get_linear_isa($package);
foreach my $p (@$mro) {
my $fqmeth = $p . q{::} . $meth;