nicer if type conflict message