Correct test of ${^WARNING_BITS} - as haarg++ noted: runtime != compile time
Peter Rabbitson [Wed, 23 Jul 2014 18:15:10 +0000 (20:15 +0200)]
Also bump Moo prereq for proper
 * presence of undefer_all
 * fixes of meory leaks in Sub::Quote/Sub::Defer

Makefile.PL
xt/quote_sub.t

index 5a952e2..eb1cb5b 100644 (file)
@@ -79,7 +79,7 @@ my $runtime_requires = {
   'Data::Page'               => '2.00',
   'Devel::GlobalDestruction' => '0.09',
   'Hash::Merge'              => '0.12',
-  'Moo'                      => '1.002',
+  'Moo'                      => '1.004005',
   'MRO::Compat'              => '0.12',
   'Module::Find'             => '0.07',
   'namespace::clean'         => '0.24',
index 7918cc5..77b4905 100644 (file)
@@ -27,17 +27,17 @@ my $no_nothing_q = do {
   no strict;
   no warnings;
   quote_sub <<'EOC';
+    BEGIN { warn "-->${^WARNING_BITS}<--\n" };
     my $n = "Test::Warn::warnings_exist";
     warn "-->@{[ *{$n}{CODE} ]}<--\n";
-    warn "-->@{[ ${^WARNING_BITS} || '' ]}<--\n";
 EOC
 };
 
 my $we_cref = Test::Warn->can('warnings_exist');
 
 warnings_exist { $no_nothing_q->() } [
+  qr/^\-\-\>\0+\<\-\-$/m,
   qr/^\Q-->$we_cref<--\E$/m,
-  qr/^\-\-\>\0*\<\-\-$/m, # some perls have a string of nulls, some just an empty string
 ], 'Expected warnings, strict did not leak inside the qsub'
   or do {
     require B::Deparse;