This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Bump $VERSION.
[perl5.git] / ext / XS-APItest / APItest.pm
index 5ef9ea2..a59e223 100644 (file)
@@ -5,6 +5,8 @@ use strict;
 use warnings;
 use Carp;
 
+our $VERSION = '0.53';
+
 require XSLoader;
 
 # Export everything since these functions are only used by a test script
@@ -24,6 +26,8 @@ sub import {
            if ($sym_name =~ /::$/) {
                # Skip any subpackages that are clearly OO
                next if *{$glob}{HASH}{'new'};
+               # and any that have AUTOLOAD
+               next if *{$glob}{HASH}{AUTOLOAD};
                push @stashes, "$stash_name$sym_name", *{$glob}{HASH};
            } elsif (ref $glob eq 'SCALAR' || *{$glob}{CODE}) {
                if ($exports) {
@@ -50,8 +54,6 @@ sub import {
     }
 }
 
-our $VERSION = '0.28';
-
 use vars '$WARNINGS_ON_BOOTSTRAP';
 use vars map "\$${_}_called_PP", qw(BEGIN UNITCHECK CHECK INIT END);
 
@@ -94,6 +96,9 @@ if ($WARNINGS_ON_BOOTSTRAP) {
     XSLoader::load();
 }
 
+# This XS function needs the lvalue attr applied.
+eval 'use attributes __PACKAGE__, \\&lv_temp_object, "lvalue"; 1' or die;
+
 1;
 __END__
 
@@ -217,7 +222,7 @@ what it might be medifying).
 =item B<call_sv>, B<call_pv>, B<call_method>
 
 These exercise the C calls of the same names. Everything after the flags
-arg is passed as the the args to the called function. They return whatever
+arg is passed as the args to the called function. They return whatever
 the C function itself pushed onto the stack, plus the return value from
 the function; for example