>   (define-key key-translation-map
>               (kbd "C-e")
>               (lambda (prompt) (kbd "C-c")))

Though I don't understand why FUNCTIONP has a different implementation than DEFUN "functionp", I suspect having FUNCTIONP check for Qclosure is closer to the right thing, so I made a patch that does that.  I verified the change allows the quoted test case to work with lexical binding enabled.  Please consider accepting it.