¿Cómo se depura el código de nivel de tipo?

La mayoría de las veces, todo lo que obtienes es un error implícito no encontrado. No sabes en qué parte de la cadena de construcción implícita falló. Aparentemente no puede usar la depuración en tiempo de ejecución o la declaración de impresión. Entonces, ¿cómo depurar un programa de nivel de tipo además de mirar su código realmente duro?