20687, "damianmoz", "Compiler warnings about implicit type conversions involving floating point numbers", "2022-09-13T21:38:34Z"
There is a need for a purely optional warning from the compiler (for those who worry about type safety) for any implicit conversion between int(u) (or even uint(u)) and real(v) where (maybe, or maybe not) u != v or even between real(??) numbers of differing sizes for one reason or another.
Not sure where complex(??) come in this issue between implicit conversions between such numbers of differing size certainly need to be included in this warning.
Potentially this warning needs several levels. One extreme is Chapel's default and the other is strict type safety. A further level at the latter end could be where the compiler emit come sort of conversion instruction into the run-time instruction stream.
Details need to be bounced around. Looking at what ADA enforces is a good starting point for such warnings.
This is a warning message only. No changes are being requested of the language although the additional option to fail the compilation if the warning is triggered is recommended.