T 10 'what gets called? Float, 'coz it's 'closer' to Int? Double 'coz it's more precise? Error because there's no exact match?
I personally would rather that the compiler complained in such circumstances because there is an ambiguity, so the programmer will have to explicitly cast the argument to Float or Double.
What is most important though, is that whatever the behaviour of overloaded functions, it is well documentated and consistant.
Edit:
I agree with Mark about properties - they can be quite misleading, and as I see it, there is no harm in just having accessor functions instead:
Where:
setField()
field()
Changes the internal field _field.