A trivial comment: For `private static abstract` and `package static abstract` functions, printing `static function cannot be abstract` is better in my opinion.