Generalize warning of undesirable accessor names
Peter Rabbitson [Sun, 28 Oct 2012 11:15:39 +0000 (12:15 +0100)]
lib/Class/Accessor/Grouped.pm

index c568f6b..24b6971 100644 (file)
@@ -73,12 +73,14 @@ sub _mk_group_accessors {
   $maker = $self->can($maker) unless ref $maker;
 
   for (@fields) {
-    if( $_ eq 'DESTROY' ) {
-      Carp::carp("Having a data accessor named DESTROY in '$class' is unwise.");
-    }
 
     my ($name, $field) = (ref $_) ? (@$_) : ($_, $_);
 
+    for (qw/DESTROY AUTOLOAD CLONE/) {
+      Carp::carp("Having a data accessor named '$name' in '$class' is unwise.")
+        if $name eq $_;
+    }
+
     my $alias = "_${name}_accessor";
 
     for my $meth ($name, $alias) {