Show quoted text 22 lines
For the others: Peter suggested that automatic typeconversions be done
for cardinal constants (ie. constants in the range int64($80000000) and
int64($ffffffff)) to longint because otherwise you need longint typecasts
when using such constants as longints (at least when you have range
checking turned on, otherwise you still get annoying warnings).
A problem I see with this is that you would at least have to
defferentiate between hex/binary and decimal constants, because otherwise
the following would become legal (no range check error/warning)
{$r+}
const
maxcardinal = 4294967295;
var
l: longint;
begin
l := maxcardinal;
end.
It is certainly possible to do such a detection, but I'm not so sure
whether it's desirable...
I think we should follow delphi in such cases.
