sub Baz::new { ... croak ... if $class->can("foo") != \&Baz::foo; ... }