diff options
author | Rick Delaney <rick@consumercontact.com> | 2008-01-09 08:36:55 -0500 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2008-01-11 10:42:13 +0000 |
commit | 52b4506763c1e322f848f17908bebdf7672f168e (patch) | |
tree | 50379905e343a88fea99bebab56c5148b688f0e3 /t/mro | |
parent | 4b48cf39454aea22003054f8b0a85963f328fe30 (diff) | |
download | perl-52b4506763c1e322f848f17908bebdf7672f168e.tar.gz |
Re: [perl #49564] Re: MRO and av_clear
Message-ID: <20080109183655.GB11282@bort.ca>
p4raw-id: //depot/perl@32948
Diffstat (limited to 't/mro')
-rw-r--r-- | t/mro/basic.t | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/t/mro/basic.t b/t/mro/basic.t index 1b186617df..6dce364285 100644 --- a/t/mro/basic.t +++ b/t/mro/basic.t @@ -3,7 +3,7 @@ use strict; use warnings; -require q(./test.pl); plan(tests => 38); +require q(./test.pl); plan(tests => 40); { package MRO_A; @@ -173,6 +173,19 @@ is(eval { MRO_N->testfunc() }, 123); ok(eq_array(mro::get_linear_isa('ISACLEAR1'),[qw/ISACLEAR1/])); ok(eq_array(mro::get_linear_isa('ISACLEAR2'),[qw/ISACLEAR2/])); + + # [perl #49564] This is a pretty obscure way of clearing @ISA but + # it tests a regression that affects XS code calling av_clear too. + { + package ISACLEAR3; + our @ISA = qw/WW XX/; + } + ok(eq_array(mro::get_linear_isa('ISACLEAR3'),[qw/ISACLEAR3 WW XX/])); + { + package ISACLEAR3; + reset 'I'; + } + ok(eq_array(mro::get_linear_isa('ISACLEAR3'),[qw/ISACLEAR3/])); } # Check that recursion bails out "cleanly" in a variety of cases |