my $aelemf = ("$]" < 5.013 or $is_5130_release) ? 'aelemfast' : 'sassign';
my $aelemf_op = $aelemf eq 'sassign'
? 'B::BINOP' : $Config{useithreads} ? 'B::PADOP' : 'B::SVOP';
+my $meth_op = ("$]" < 5.021_005) ? 'B::SVOP' : 'B::METHOP';
our @o;
[ 'bless', 'B::LISTOP' ] ],
[ 'get', '$c', 'my $c = ""','$c =~ /x/', [ 'match', 'B::PMOP' ] ],
[ 'get', '$c', 'my $c = "Variable::Magic::TestPkg"',
- '$c->foo()', [ 'method_named', 'B::SVOP' ] ],
+ '$c->foo()', [ 'method_named', $meth_op ] ],
[ 'get', '$c', 'my $c = ""','$c =~ y/x/y/', [ 'trans', 'B::PVOP' ] ],
[ 'get', '$c', 'my $c = 1', '1 for 1 .. $c',
[ 'enteriter', 'B::LOOP' ] ],
our $done;
+my $OP_INFO_NAME = VMG_OP_INFO_NAME;
+my $OP_INFO_OBJECT = VMG_OP_INFO_OBJECT;
+
for (@tests) {
my ($key, $var, $init, $test, $exp) = @$_;
- for my $op_info (VMG_OP_INFO_NAME, VMG_OP_INFO_OBJECT) {
+ for my $op_info ($OP_INFO_NAME, $OP_INFO_OBJECT) {
my $wiz;
# We must test for the $op correctness inside the callback because, if we
return if $done;
my $op = $_[-1];
my $desc = "$key magic with op_info == $op_info";
- if ($op_info == VMG_OP_INFO_NAME) {
+ if ($op_info == $OP_INFO_NAME) {
is $op, $exp->[0], "$desc gets the right op info";
- } elsif ($op_info == VMG_OP_INFO_OBJECT) {
+ } elsif ($op_info == $OP_INFO_OBJECT) {
isa_ok $op, $exp->[1], $desc;
is $op->name, $exp->[0], "$desc gets the right op info";
} else {