我们有一个大型的Delphi代码库,我们想要移植到64位。
我拥有一个德尔福XE2许可证,我找不到任何警告或提示,可以帮助我检测有效的32位结构,现在可能导致64位平台下的数据丢失。例如,对32位编译器完全有效的THandle to 红衣主教赋值在为Win64编译时不会引发任何警告。在使用Delphi 2009迁移到Unicode时,我们收到了大量警告,这些警告帮助我们跟踪和修复可疑代码。有了XE2,我什么也找不到。
下面是一些明显有缺陷的代码,我认为编译器应该对其发出诊断。但gcc和g++都不支持,即使有我能想到的所有警告选项:-pedantic -Wall -Wextra{ printf("%d\n", f(x)); /* hoping for a warning here */}
有没有办法让gcc和g++<