The attached patch fixes this and also fixes up another test to get things working under 5.21.4.
diff -rup Coat-0.502-Lf3xY5-orig/t/002_always_strict_warnings.t Coat-0.502-Lf3xY5/t/002_always_strict_warnings.t
--- Coat-0.502-Lf3xY5-orig/t/002_always_strict_warnings.t 2007-09-18 06:34:21.000000000 -0700
+++ Coat-0.502-Lf3xY5/t/002_always_strict_warnings.t 2014-09-21 23:17:18.000000000 -0700
@@ -9,7 +9,7 @@ use Test::More tests => 5;
eval '$foo = 5;';
::ok($@, '... got an error because strict is on');
- ::like($@, qr/Global symbol \"\$foo\" requires explicit package name at/, '... got the right error');
+ ::like($@, qr/Global symbol \"\$foo\" requires explicit package name/, '... got the right error');
{
my $warn;
diff -rup Coat-0.502-Lf3xY5-orig/t/moose_tests/010_basics_015_buildargs.t Coat-0.502-Lf3xY5/t/moose_tests/010_basics_015_buildargs.t
--- Coat-0.502-Lf3xY5-orig/t/moose_tests/010_basics_015_buildargs.t 2008-11-24 14:51:38.000000000 -0800
+++ Coat-0.502-Lf3xY5/t/moose_tests/010_basics_015_buildargs.t 2014-09-21 23:17:56.000000000 -0700
@@ -24,7 +24,7 @@ use Test::More tests => 14;
extends qw(Foo);
}
-foreach my $class qw(Foo Bar) {
+foreach my $class (qw(Foo Bar)) {
is( $class->new->bar, undef, "no args" );
is( $class->new( bar => 42 )->bar, 42, "normal args" );
is( $class->new( 37 )->bar, 37, "single arg" );