Abbiamo una base di codice XE Delphi grande che vogliamo portare a 64 bit.Porting di codice Delphi a 64 bit - Perché nessun avvertimento del compilatore?
Possiedo una licenza Delphi XE2 e non riesco a trovare alcun avviso né suggerimento che possa aiutarmi a rilevare costruzioni a 32 bit valide che ora possono portare alla perdita di dati in una piattaforma a 64 bit. Ad esempio, THandle a Cardinal assegnazioni perfettamente valide con il compilatore a 32 bit non generano alcun avviso durante la compilazione per Win64.
Durante la migrazione a Unicode con Delphi 2009, abbiamo ricevuto tonnellate di avvertenze che ci hanno aiutato molto a monitorare e correggere il codice sospetto. Con XE2, non riesco a trovare nulla. Non riesco a immaginare che non ci sia nulla di integrato nel livello del compilatore per evitare di fare una revisione manuale di tutto il nostro codice.
Mi manca qualcosa? Come hai portato i tuoi progetti a 64 bit, se ci provavi?
Grazie!
'THandle' non è più mappato a' integer' più, ma a 'NativeUInt' (ovvero,' cardinal' solo in Win32). Può aiutare a identificare i problemi. –
Non riesco a ottenere questo tipo di messaggi in XE (1), ad esempio assegnando un int a un byte ... – GolezTrol
@GolezTrol: hai ragione, ma dai miei incarichi POV che potrebbero portare a risultati diversi quando sono compilati per Win32 o Win64 dovrebbero introdurre _a nuova classe di warning del compilatore_. –