also add this error for roles
Jesse Luehrs [Sun, 19 Jun 2011 06:51:53 +0000 (01:51 -0500)]
lib/Moose/Role.pm

index 1cbc9ff..09029b7 100644 (file)
@@ -106,6 +106,9 @@ sub init_meta {
     my $metaclass = $args{metaclass} || "Moose::Meta::Role";
     my $meta_name = exists $args{meta_name} ? $args{meta_name} : 'meta';
 
+    Moose->throw_error("The Metaclass $metaclass must be loaded. (Perhaps you forgot to 'use $metaclass'?)")
+        unless Class::MOP::is_class_loaded($metaclass);
+
     Moose->throw_error("The Metaclass $metaclass must be a subclass of Moose::Meta::Role.")
         unless $metaclass->isa('Moose::Meta::Role');