Subject: | CAG compatibility appears not to work |
The 'inherited' type accessors are stored under the "__cag_$accessor" stash key which is awesome, thank you for considering the compatibility implications. However there is some sort of @ISA-based interaction, see below:
perl -e '
package Foo;
use warnings;
use strict;
BEGIN {
# It does not matter what it is - something happens to the
# stash after *any* ISA manipulation
# If we do remove this - all is well, the script prints "bar"
our @ISA = "Whatever"
}
use Class::Accessor::Inherited::XS (
inherited => "someaccessor"
);
{
no strict "refs";
${"Foo::__cag_someaccessor"} = "bar";
}
warn Foo->someaccessor;
'