Он может, к примеру, наследовать другой abstract class. Который находится в другом модуле, потому гарантий, что в нём в самом нет абстрактных методов, получить не выйдет. Потому проверить отсутствие по всему дереву не выйдет.
Да и зачем? Вроде не мешает такая возможность.