PHP 5.4: ¿por qué las clases pueden anular los métodos de rasgos con una firma diferente?

Me pregunto si hay alguna buena razón para que este comportamiento sea posible en la implementación actual de PHP 5.4:

trait T {
    public function test(PDO $pdo) {}
}

class C {
    use T;
    public function test(DOMDocument $dom) {}
}

Pensé que el hecho de que una clase use un rasgo, garantizaba que esta clase tuviera una interfaz específica disponible. Pero aquí, si inadvertidamente anulamos el método del rasgo para otro propósito, ni siquiera recibimos un aviso de Estándares estrictos, como sucede con la herencia clásica.

¿Se permite esto específicamente a propósito? ¿Para qué?

Respuestas a la pregunta(1)

Su respuesta a la pregunta