Fix RT bug #46086
Kaare Rasmussen [Sat, 26 Nov 2011 20:00:30 +0000 (21:00 +0100)]
Changes
lib/MooseX/Singleton/Role/Meta/Class.pm
t/warnings_once.t [new file with mode: 0644]

diff --git a/Changes b/Changes
index d91e401..b78042f 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,8 @@
 Revision history for Perl extension MooseX-Singleton
 
 {{$NEXT}}
+    - Fix RT Bug #46086, "name used only once" (Thanks chisel for the patch and
+      the test
 
 0.27 2011-05-19
 
index 2d606f4..beda2d1 100644 (file)
@@ -34,6 +34,7 @@ override _construct_instance => sub {
 
     my $pkg = $class->name;
     no strict 'refs';
+    no warnings 'once';
     return ${"$pkg\::singleton"} = super;
 };
 
diff --git a/t/warnings_once.t b/t/warnings_once.t
new file mode 100644 (file)
index 0000000..696cbe5
--- /dev/null
@@ -0,0 +1,14 @@
+# test script for: https://rt.cpan.org/Ticket/Display.html?id=46086
+use Test::More qw(no_plan);
+use Test::NoWarnings;
+
+BEGIN {
+    package OnlyUsedOnce;
+    use strict;
+    use warnings;
+    use MooseX::Singleton;
+}
+
+BEGIN { OnlyUsedOnce->initialize; }
+
+my $s = OnlyUsedOnce->instance;