Is there a difference between these two implementations?
func addVehicle(v: any Vehicle) { }
and
func addVehicle<T:Vehicle>(v: T) { }