Delphi compile-time integer conversion warnings?
In Delphi, even in Delphi 10.3 -- no. But take a look into software calling 'Pascal Analyzer', mfg by www.peganza.com
They have a lot of options and one of them is (taken from software Help):
Source code for test, take a look into line #32:
Analyze result show possible bad assignment in line #32:
You won't get any warnings or hints at compile time. The Delphi compiler does not do any program flow analysis which tells it that big
contains a too large value when it is assigned to small
. It silently truncates the value to make it fit in the smaller type. I tried with Shortint
, a signed byte-sized type and even that did not give a warning or hint.
And there is no way to make Delphi warn you. It would be nice. Perhaps you can suggest it in QC (if it wasn't already suggested)?