implicits.scala:21: error: type mismatch; found : Pos required: ?{val +: ?} Note that implicit conversions are not applicable because they are ambiguous: both method any2plus in object Sub of type (x: Any)Sub.Plus and method pos2int in object Super of type (p: Pos)int are possible conversion functions from Pos to ?{val +: ?} f(p+1) ^ one error found