Commit 52e157e2 authored by Florian Schlichting's avatar Florian Schlichting

New upstream version 0.011

parent 803d29e9
......@@ -98,7 +98,6 @@ Module::Build->subclass(code => q{
needs_compiler => 0,
dynamic_config => 1,
meta_add => { distribution_type => "module" },
create_makefile_pl => "passthrough",
sign => 1,
)->create_build_script;
......
version 0.011; 2017-07-15
* update test suite to not rely on . in @INC, which is no longer
necessarily there from Perl 5.25.7
* no longer include a Makefile.PL in the distribution
* update op-munging code to the PERL_OP_PARENT-compatible style
(though none of it is actually used on Perls new enough to support
PERL_OP_PARENT)
* rename internal gen_*_op() functions into a better style
* consistently use THX_ prefix on internal function names
version 0.010; 2016-03-18
* skip test with lexical $_ on Perl 5.23.4+ where that feature has
......
......@@ -4,37 +4,36 @@ Changes
MANIFEST
META.json
META.yml
Makefile.PL
README
lib/Lexical/SealRequireHints.pm
lib/Lexical/SealRequireHints.xs
t/before_warnings.t
t/before_warnings_pp.t
t/context.t
t/context_0.pm
t/context_1.pm
t/context_2.pm
t/context_pp.t
t/defsv.t
t/eval.t
t/eval_0.pm
t/eval_pp.t
t/idempotent.t
t/idempotent_pp.t
t/lib/t/context_0.pm
t/lib/t/context_1.pm
t/lib/t/context_2.pm
t/lib/t/eval_0.pm
t/lib/t/package_0.pm
t/lib/t/seal_0.pm
t/lib/t/seal_1.pm
t/lib/t/seal_2.pm
t/lib/t/seal_3.pm
t/lib/t/seal_4.pm
t/override.t
t/override_pp.t
t/package.t
t/package_0.pm
t/package_pp.t
t/pod_cvg.t
t/pod_cvg_pp.t
t/pod_syn.t
t/seal.t
t/seal_0.pm
t/seal_1.pm
t/seal_2.pm
t/seal_3.pm
t/seal_4.pm
t/seal_pp.t
t/setup_pp.pl
t/swash.t
......
......@@ -4,13 +4,13 @@
"Andrew Main (Zefram) <zefram@fysh.org>"
],
"dynamic_config" : 1,
"generated_by" : "Module::Build version 0.4205",
"generated_by" : "Module::Build version 0.4222",
"license" : [
"perl_5"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : "2"
"version" : 2
},
"name" : "Lexical-SealRequireHints",
"prereqs" : {
......@@ -46,7 +46,7 @@
"provides" : {
"Lexical::SealRequireHints" : {
"file" : "lib/Lexical/SealRequireHints.pm",
"version" : "0.010"
"version" : "0.011"
}
},
"release_status" : "stable",
......@@ -55,5 +55,6 @@
"http://dev.perl.org/licenses/"
]
},
"version" : "0.010"
"version" : "0.011",
"x_serialization_backend" : "JSON::PP version 2.93"
}
......@@ -16,7 +16,7 @@ configure_requires:
conflicts:
B::Hooks::OP::Check: '< 0.19'
dynamic_config: 1
generated_by: 'Module::Build version 0.4205, CPAN::Meta::Converter version 2.131560'
generated_by: 'Module::Build version 0.4222, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
......@@ -25,11 +25,12 @@ name: Lexical-SealRequireHints
provides:
Lexical::SealRequireHints:
file: lib/Lexical/SealRequireHints.pm
version: '0.010'
version: '0.011'
recommends:
XSLoader: '0'
requires:
perl: '5.006'
resources:
license: http://dev.perl.org/licenses/
version: '0.010'
version: '0.011'
x_serialization_backend: 'CPAN::Meta::YAML version 0.012'
# Note: this file was auto-generated by Module::Build::Compat version 0.4205
require 5.006;
unless (eval "use Module::Build::Compat 0.02; 1" ) {
print "This module requires Module::Build to install itself.\n";
require ExtUtils::MakeMaker;
my $yn = ExtUtils::MakeMaker::prompt
(' Install Module::Build now from CPAN?', 'y');
unless ($yn =~ /^y/i) {
die " *** Cannot install without Module::Build. Exiting ...\n";
}
require Cwd;
require File::Spec;
require CPAN;
# Save this 'cause CPAN will chdir all over the place.
my $cwd = Cwd::cwd();
CPAN::Shell->install('Module::Build::Compat');
CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
or die "Couldn't install Module::Build, giving up.\n";
chdir $cwd or die "Cannot chdir() back to $cwd: $!";
}
eval "use Module::Build::Compat 0.02; 1" or die $@;
use lib '_build/lib';
Module::Build::Compat->run_build_pl(args => \@ARGV);
my $build_script = 'Build';
$build_script .= '.com' if $^O eq 'VMS';
exit(0) unless(-e $build_script); # cpantesters convention
require MyModuleBuilder;
Module::Build::Compat->write_makefile(build_class => 'MyModuleBuilder');
......@@ -55,7 +55,7 @@ Andrew Main (Zefram) <zefram@fysh.org>
COPYRIGHT
Copyright (C) 2009, 2010, 2011, 2012, 2015, 2016
Copyright (C) 2009, 2010, 2011, 2012, 2015, 2016, 2017
Andrew Main (Zefram) <zefram@fysh.org>
LICENSE
......
......@@ -15,56 +15,55 @@ not run its Makefile.PL or Build.PL.
Hash: SHA1
SHA1 6950821fe34951e6170552099d0de2ee22e43714 .gitignore
SHA1 cd9729601cf687ddd61f76175d4aaae77c89be3e Build.PL
SHA1 75d4714d71625903fb71e0bdf0106e68fb54f1a4 Changes
SHA1 8a0fd294cf9c6c2a0aa73eb594811f6ff9d4ad2a MANIFEST
SHA1 8e63d0b67bc8cf2febc728e5d280a1d9e1fd2b94 META.json
SHA1 7a28f6b028fdd2f16ad91b801a81e30d86a24c6a META.yml
SHA1 01014dbee096cf5abd3f05069cefa9c907a4aea1 Makefile.PL
SHA1 336d8399ff7000bbdc255cec7227b4ab70809842 README
SHA1 8f4a5de8bfb6fbca5150fee1436d700f32213fa6 lib/Lexical/SealRequireHints.pm
SHA1 b37bc49474485b81053e6140531279187db2c1ff lib/Lexical/SealRequireHints.xs
SHA1 0616efb9fea4b42ef61504539491dea58c0786b1 Build.PL
SHA1 6350fe8377653135b4815b6e0e1ef388dd3aea1d Changes
SHA1 f6bab67957ec6cb5a1dbfb303390229f981b96db MANIFEST
SHA1 efc5631378f819a1dfbd4074fb6d38f492970198 META.json
SHA1 c9698f97e2d78e3a15f79570c61fab4a499e1314 META.yml
SHA1 3f668a964c81d5ce977c778255b5eed9fea1c6b2 README
SHA1 4327c0f4dd68ec8bd91d35eaabadb92723346921 lib/Lexical/SealRequireHints.pm
SHA1 ee3c56448c1878c343d62da40f2021e9d69528a2 lib/Lexical/SealRequireHints.xs
SHA1 85aaf18e006530f42082c756aa1040649c8b09a0 t/before_warnings.t
SHA1 61999cf7732bd0ae59043f1718b294598366bdeb t/before_warnings_pp.t
SHA1 3df41730d40647226f508e56d154aa432491d004 t/context.t
SHA1 d40cabac0840b217bd9790fcf9c61f53d84561ec t/context_0.pm
SHA1 c38cbea405a2738de1e144063993d9958934b828 t/context_1.pm
SHA1 f13b20d1b34f6765fa222a387c022e4543aef945 t/context_2.pm
SHA1 82657c96b6ed89ce7bdb6285dbcfbb05d68eaeb3 t/context_pp.t
SHA1 5e04888f522d8b7fb35739b461fd11aca24112f3 t/defsv.t
SHA1 cafd4c3b6c5ea236bc2abec70b819b730cb90c4c t/eval.t
SHA1 e9a4397c1e339f95671c1b5e609426f624784efe t/eval_0.pm
SHA1 b110d57bc147139e44f07d931e3d3698b404c244 t/eval_pp.t
SHA1 bba5f7f0083a8575478ddb642d80e27d6bf111c9 t/idempotent.t
SHA1 ef1eea9ae1774a96b0955b0da0d703de32bbcfe2 t/idempotent_pp.t
SHA1 1c2bfdf067bb2215729fe8ff60990c875799a22a t/override.t
SHA1 d151cfac8c90f19137177b72eb2bff07488401ea t/override_pp.t
SHA1 b064a061f38ee4924c7100180e8e8ff877bb25d1 t/package.t
SHA1 8f88eba8be8441c0e078f3279b9220a2fdcd7c7c t/package_0.pm
SHA1 4b0236dd669efdacdadba6e11d9fe43364612c58 t/package_pp.t
SHA1 ba8ac9a2c5eae1646fe0a32884f8bce8164981d4 t/before_warnings_pp.t
SHA1 f0e8de16764c8ed0cb2de866e62e04d3b6710681 t/context.t
SHA1 ae68c412d70f10ac1c8dfd0e78a1fcb03c64a4cd t/context_pp.t
SHA1 5439e1dcab04c71c710ee9d6566f0a8794f054a1 t/defsv.t
SHA1 ba454428e28bf1e2c52ab85f99262eafec90264a t/eval.t
SHA1 0dc83a10b6e41c384c6d14d70d941f0f9852ea3e t/eval_pp.t
SHA1 6b56f4e9647471655eeff10a08293bef3ffd9706 t/idempotent.t
SHA1 f884176ed69eee995d27f355906f9c4089fbd207 t/idempotent_pp.t
SHA1 d40cabac0840b217bd9790fcf9c61f53d84561ec t/lib/t/context_0.pm
SHA1 c38cbea405a2738de1e144063993d9958934b828 t/lib/t/context_1.pm
SHA1 f13b20d1b34f6765fa222a387c022e4543aef945 t/lib/t/context_2.pm
SHA1 e9a4397c1e339f95671c1b5e609426f624784efe t/lib/t/eval_0.pm
SHA1 8f88eba8be8441c0e078f3279b9220a2fdcd7c7c t/lib/t/package_0.pm
SHA1 8f7a77729ec67ed32b8faa2492bb0f4ee4f35744 t/lib/t/seal_0.pm
SHA1 881d167b1d9169cef37af0d845af437e90e7869d t/lib/t/seal_1.pm
SHA1 77fb76f802a2669291950d830979738ba34ebd71 t/lib/t/seal_2.pm
SHA1 8bebdc1f1032ee7e2c3448b8c08eb68a30eaac3f t/lib/t/seal_3.pm
SHA1 e8478e388c78af43a2f3b50dd4c2d647dbd3b9ef t/lib/t/seal_4.pm
SHA1 93873dcbc2f0a6d3969da339804fd1b2fb2f7215 t/override.t
SHA1 275ad60cee3db0a156dd290e10bffdd2f15b020d t/override_pp.t
SHA1 c4b1c66405db4fb0236d793355669f46b4239247 t/package.t
SHA1 32a8ee26109cebb5294d304f8e26e5f2fc41357c t/package_pp.t
SHA1 ec7947b4fd26dfa4c85ce4cddf2e0d9b9f7b6fcc t/pod_cvg.t
SHA1 3f447b1d0b8a6247c3a311087f8d66da1c3ca5db t/pod_cvg_pp.t
SHA1 8b0ef0af30cd5064cf1b3d57c5fdbab11f8c567c t/pod_cvg_pp.t
SHA1 65c75abdef6f01a5d1588a307f2ddfe2333dc961 t/pod_syn.t
SHA1 a19a2542b1e955fa78ab677edfd70a3fae8f972d t/seal.t
SHA1 8f7a77729ec67ed32b8faa2492bb0f4ee4f35744 t/seal_0.pm
SHA1 881d167b1d9169cef37af0d845af437e90e7869d t/seal_1.pm
SHA1 77fb76f802a2669291950d830979738ba34ebd71 t/seal_2.pm
SHA1 8bebdc1f1032ee7e2c3448b8c08eb68a30eaac3f t/seal_3.pm
SHA1 e8478e388c78af43a2f3b50dd4c2d647dbd3b9ef t/seal_4.pm
SHA1 bf9f3734c090121ff387eb85351b8abe17d6cff6 t/seal_pp.t
SHA1 b98b2fdbda12097de5f07efb0e385a0d541c325a t/seal.t
SHA1 e55bad95386f7c6a7fa706879ee4a57c65d1d2ff t/seal_pp.t
SHA1 f8bd31bc8099cbb21c36cddc0508652fd092e332 t/setup_pp.pl
SHA1 6912741c04aa7b1a080bbe9216e453e489e9c218 t/swash.t
SHA1 c2be3b40bb344403ac14899f5dfe05196373d1f9 t/swash_pp.t
SHA1 923e318828faaccdd2585f228535f44fae8b1842 t/threads.t
SHA1 3dcc432bbe2d8f67f875e68d6501fd69683fab9f t/threads_pp.t
SHA1 8b64b9e77d907e8a27f665b86c0ddbf80c54fd81 t/swash.t
SHA1 80c995c18004f3bbf08ee665456aa90591cf75af t/swash_pp.t
SHA1 2e0c5b75f050c8a561c75808e866f002cbab7162 t/threads.t
SHA1 36fd6f457842f0c87a7b766d264a3bcc6fccc889 t/threads_pp.t
SHA1 0ec3dd0164e1e852b1be5f78bbacebd4990f085e t/version_check.t
SHA1 ed1cbf6ff3eed2268c517087e01814a940da658e t/version_check_pp.t
SHA1 8cb66e045a1218a108c7d4acf723a3eafea1a42c t/version_check_pp.t
SHA1 cbff8c2d9481b01beb691a498ae98511d0b25cbe t/version_feature.t
SHA1 04c0a2e7e2291f9e74f8add832caa29eb2b538d4 t/version_feature_pp.t
SHA1 e433dba0073843f1b0b2546776904c41e03e337f t/version_feature_pp.t
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iEYEARECAAYFAlbrjRUACgkQOV9mt2VyAVHBWwCfW7Lx+foQeOJBOrg9bNx4IaeA
m3QAnRF0brlt0orO1DIIq3vZB0b1DCdi
=kLC/
iEYEARECAAYFAllqgWgACgkQOV9mt2VyAVG42gCgiQ/tfw+0miisvMiqXiU1m7xW
fkkAn0CbNVe9pmiHogY4f3UMmsuLd0gg
=1LYu
-----END PGP SIGNATURE-----
......@@ -145,7 +145,7 @@ BEGIN { ${^WARNING_BITS} = ""; }
# Also don't "use strict", because of consequences of compiling
# strict.pm's code.
our $VERSION = "0.010";
our $VERSION = "0.011";
if("$]" >= 5.012) {
# bug not present
......@@ -270,7 +270,7 @@ Andrew Main (Zefram) <zefram@fysh.org>
=head1 COPYRIGHT
Copyright (C) 2009, 2010, 2011, 2012, 2015, 2016
Copyright (C) 2009, 2010, 2011, 2012, 2015, 2016, 2017
Andrew Main (Zefram) <zefram@fysh.org>
=head1 LICENSE
......
......@@ -9,6 +9,10 @@
#define PERL_VERSION_GE(r,v,s) \
(PERL_DECIMAL_VERSION >= PERL_VERSION_DECIMAL(r,v,s))
#ifndef cBOOL
# define cBOOL(x) ((bool)!!(x))
#endif /* !cBOOL */
#ifndef croak
# define croak Perl_croak_nocontext
#endif /* !croak */
......@@ -26,6 +30,16 @@ typedef OP *(*Perl_check_t)(pTHX_ OP *);
typedef unsigned Optype;
# endif /* <5.10.1 */
# ifndef OpMORESIB_set
# define OpMORESIB_set(o, sib) ((o)->op_sibling = (sib))
# define OpLASTSIB_set(o, parent) ((o)->op_sibling = NULL)
# define OpMAYBESIB_set(o, sib, parent) ((o)->op_sibling = (sib))
# endif /* !OpMORESIB_set */
# ifndef OpSIBLING
# define OpHAS_SIBLING(o) (cBOOL((o)->op_sibling))
# define OpSIBLING(o) (0 + (o)->op_sibling)
# endif /* !OpSIBLING */
# ifndef wrap_op_checker
# define wrap_op_checker(c,n,o) THX_wrap_op_checker(aTHX_ c,n,o)
static void THX_wrap_op_checker(pTHX_ Optype opcode,
......@@ -55,9 +69,13 @@ static OP *THX_newDEFSVOP(pTHX)
OP *dop = newOP(OP_DEFINED, 0);
if(dop->op_type == OP_DEFINED && (dop->op_flags & OPf_KIDS)) {
OP *op = cUNOPx(dop)->op_first;
cUNOPx(dop)->op_first = op->op_sibling;
if(!op->op_sibling) dop->op_flags &= ~OPf_KIDS;
op->op_sibling = NULL;
if(OpHAS_SIBLING(op)) {
cUNOPx(dop)->op_first = OpSIBLING(op);
} else {
cUNOPx(dop)->op_first = NULL;
dop->op_flags &= ~OPf_KIDS;
}
OpLASTSIB_set(op, NULL);
op_free(dop);
return op;
}
......@@ -73,9 +91,13 @@ static OP *THX_op_scalar(pTHX_ OP *op)
if(!(sop->op_type == OP_SCALAR && (sop->op_flags & OPf_KIDS)))
return sop;
op = cUNOPx(sop)->op_first;
cUNOPx(sop)->op_first = op->op_sibling;
if(!op->op_sibling) sop->op_flags &= ~OPf_KIDS;
op->op_sibling = NULL;
if(OpHAS_SIBLING(op)) {
cUNOPx(sop)->op_first = OpSIBLING(op);
} else {
cUNOPx(sop)->op_first = NULL;
sop->op_flags &= ~OPf_KIDS;
}
OpLASTSIB_set(op, NULL);
op_free(sop);
return op;
}
......@@ -108,8 +130,8 @@ static OP *THX_pp_squashhints(pTHX)
return PL_op->op_next;
}
# define gen_squashhints_op() THX_gen_squashhints_op(aTHX)
static OP *THX_gen_squashhints_op(pTHX)
# define newOP_squashhints() THX_newOP_squashhints(aTHX)
static OP *THX_newOP_squashhints(pTHX)
{
OP *squashhints_op = newOP(OP_PUSHMARK, 0);
squashhints_op->op_type = OP_RAND;
......@@ -126,8 +148,8 @@ static OP *THX_pp_maybesquashhints(pTHX)
PL_op->op_next : pp_squashhints();
}
# define gen_maybesquashhints_op(argop) THX_gen_maybesquashhints_op(aTHX_ argop)
static OP *THX_gen_maybesquashhints_op(pTHX_ OP *argop)
# define newOP_maybesquashhints(argop) THX_newOP_maybesquashhints(aTHX_ argop)
static OP *THX_newOP_maybesquashhints(pTHX_ OP *argop)
{
OP *msh_op = newUNOP(OP_NULL, 0, argop);
msh_op->op_type = OP_RAND;
......@@ -135,9 +157,9 @@ static OP *THX_gen_maybesquashhints_op(pTHX_ OP *argop)
return msh_op;
}
static OP *(*nxck_require)(pTHX_ OP *op);
static OP *(*THX_nxck_require)(pTHX_ OP *op);
static OP *myck_require(pTHX_ OP *op)
static OP *THX_myck_require(pTHX_ OP *op)
{
OP *argop;
if(!(op->op_flags & OPf_KIDS)) {
......@@ -161,8 +183,8 @@ static OP *myck_require(pTHX_ OP *op)
* name, so we definitely want to squash hints at runtime.
* So build op tree with an unconditional squashhints op.
*/
op = nxck_require(aTHX_ op);
op = append_list(OP_LINESEQ, (LISTOP*)gen_squashhints_op(),
op = THX_nxck_require(aTHX_ op);
op = append_list(OP_LINESEQ, (LISTOP*)newOP_squashhints(),
(LISTOP*)op);
} else {
/*
......@@ -171,10 +193,10 @@ static OP *myck_require(pTHX_ OP *op)
* So we wrap the argument op, separating it from the
* require op.
*/
OP *sib = argop->op_sibling;
argop->op_sibling = NULL;
argop = gen_maybesquashhints_op(op_scalar(argop));
argop->op_sibling = sib;
OP *sib = OpSIBLING(argop);
OpLASTSIB_set(argop, NULL);
argop = newOP_maybesquashhints(op_scalar(argop));
OpMAYBESIB_set(argop, sib, op);
cUNOPx(op)->op_first = argop;
}
op = prepend_elem(OP_LINESEQ, newOP(OP_ENTER, 0), op);
......@@ -195,7 +217,7 @@ import(SV *classname)
CODE:
PERL_UNUSED_VAR(classname);
#if Q_MUST_WORKAROUND
wrap_op_checker(OP_REQUIRE, myck_require, &nxck_require);
wrap_op_checker(OP_REQUIRE, THX_myck_require, &THX_nxck_require);
#endif /* Q_MUST_WORKAROUND */
void
......
# No "use warnings" here because of the unique requirements of
# before_warnings.t.
do "t/setup_pp.pl" or die $@ || $!;
do "t/before_warnings.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/before_warnings.t" or die $@ || $!;
1;
......@@ -4,6 +4,7 @@ use strict;
use Test::More tests => 14;
BEGIN { use_ok "Lexical::SealRequireHints"; }
BEGIN { unshift @INC, "./t/lib"; }
my $retval;
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/context.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/context.t" or die $@ || $!;
1;
......@@ -4,6 +4,7 @@ use strict;
use Test::More tests => 5;
BEGIN { use_ok "Lexical::SealRequireHints"; }
BEGIN { unshift @INC, "./t/lib"; }
SKIP: {
skip "CORE::GLOBAL::require breaks require() on this perl", 4
......
......@@ -11,6 +11,7 @@ BEGIN {
use Test::More tests => 5;
BEGIN { use_ok "Lexical::SealRequireHints"; }
BEGIN { unshift @INC, "./t/lib"; }
use t::eval_0;
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/eval.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/eval.t" or die $@ || $!;
1;
......@@ -4,6 +4,6 @@ use strict;
alarm 10;
use Lexical::SealRequireHints;
do "t/seal.t" or die $@ || $!;
do "./t/seal.t" or die $@ || $!;
1;
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/idempotent.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/idempotent.t" or die $@ || $!;
1;
......@@ -39,6 +39,7 @@ BEGIN {
}
BEGIN { use_ok "Lexical::SealRequireHints"; }
BEGIN { unshift @INC, "./t/lib"; }
BEGIN {
my $next_require = defined(&CORE::GLOBAL::require) ?
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/override.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/override.t" or die $@ || $!;
1;
......@@ -3,6 +3,8 @@ use strict;
use Test::More tests => 2;
BEGIN { unshift @INC, "./t/lib"; }
our $native_package;
BEGIN {
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/package.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/package.t" or die $@ || $!;
1;
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/pod_cvg.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/pod_cvg.t" or die $@ || $!;
1;
......@@ -19,6 +19,7 @@ sub test_runtime_hint_hash($$) {
}
BEGIN { use_ok "Lexical::SealRequireHints"; }
BEGIN { unshift @INC, "./t/lib"; }
BEGIN {
$^H |= 0x20000 if "$]" < 5.009004;
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/seal.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/seal.t" or die $@ || $!;
1;
......@@ -12,6 +12,7 @@ BEGIN {
use Test::More tests => 6;
use Lexical::SealRequireHints;
BEGIN { unshift @INC, "./t/lib"; }
BEGIN {
SKIP: {
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/swash.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/swash.t" or die $@ || $!;
1;
......@@ -29,6 +29,8 @@ use Test::More tests => 3;
use Thread::Semaphore ();
use threads::shared;
BEGIN { unshift @INC, "./t/lib"; }
alarm 10; # failure mode may involve an infinite loop
my $done1 = Thread::Semaphore->new(0);
......
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/threads.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/threads.t" or die $@ || $!;
1;
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/version_check.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/version_check.t" or die $@ || $!;
1;
use warnings;
use strict;
do "t/setup_pp.pl" or die $@ || $!;
do "t/version_feature.t" or die $@ || $!;
do "./t/setup_pp.pl" or die $@ || $!;
do "./t/version_feature.t" or die $@ || $!;
1;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment