only define incomplete instances for functions in old GHCs that require them