(define impc:compiler:print-bad-type-error-with-ast
(lambda (type message ast)
(print-with-colors *impc:compiler:pretty-print-error-color*
'default #t (print "Type Error"))
(print " bad type ")
(print-with-colors *impc:compiler:pretty-print-type-color* 'default #f (print type))
(print " " message " ")
(print-with-colors *impc:compiler:pretty-print-code-color* 'default #f (print ast "\n"))
(if (impc:aot:currently-compiling?)
(quit 2)
(throw ""))))