在 Delphi XE 或 2006 中,有没有办法在编译时检测到整数类型之间的隐式转换可能会丢失数据?我知道可以通过运行时检查来检测这一点。即使“大”值为1,我也希望它能标记以下示例。(我们正在考虑将int更改为bigint用于某些数据库键,并希望确定对大型遗留代码库的影响。)
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
small: Integer;
big: Int64;
begin
big := 3000000000000;
small := big; // Detect me!
Writeln(small);
end.