Move Expression::implicitConvTo into a visitor class
Dammit