--- grouped_fields.orig 2003-07-05 14:37:06.000000000 -0700 +++ grouped_fields.new 2003-07-05 15:22:56.000000000 -0700 @@ -1,10 +1,21 @@ -sub grouped_fields { +sub grouped_fields_inherit { my ($class, %args) = @_; my %methods; foreach (keys %args) { my @slots = @{$args{$_}}; $class->get_set(@slots); - $methods{$_} = sub { @slots }; + + my $method_name = $_; + $methods{$_} = sub { + my $self = shift; + my @parent_slots = (); + @parent_slots = $self->SUPER::$method_name(); + return ( @parent_slots, @slots ); + }; + } $class->install_methods(%methods); }