Hi If I crosscompile the folowing program with Lazarus-0.9.29-21694-fpc-2.3.1-20090914-win32.exe and Lazarus-0.9.29-21694-fpc-2.3.1-20090914-cross-arm-wince-win32.exe:
program test4; {$MODE Delphi} {$APPTYPE CONSOLE} uses {$IFDEF WINDOWS} Windows, {$ENDIF} SysUtils, Classes, DateUtils; {$IFDEF WINDOWS} {$R test4.rc} {$ENDIF} function cvt1 (t: TdateTime): string; var yy,mm,dd,hh,nn,ss,ms: Word; begin DecodeDateTime (t,yy,mm,dd,hh,nn,ss,ms); result := Format('%d %d %d %d %d %d %d',[yy,mm,dd,hh,nn,ss,ms]); // <<<<< Bus error or misaligned data access ???? end; function cvt2 (t: TdateTime): string; var yy,mm,dd,hh,nn,ss,ms: Word; begin DecodeDateTime (t,yy,mm,dd,hh,nn,ss,ms); try result := Format('%d %d %d %d %d %d %d',[yy,mm,dd,hh,nn,ss,ms]); // OK, no Bus Error except on E: Exception do writeln ('cvt2 ERROR ' + E.Message); end; end; begin try writeln ('cvt1: Now = ' + cvt1(Now)); except on E: Exception do writeln ('cvt1 ERROR ' + E.Message); end; writeln ('cvt2: Now = ' + cvt2(Now)); end. and download to ARM (Advantech UNO-1019, WinCE 5.0) the output from program is: cvt1 ERROR Bus error or misaligned data access cvt2: Now = 2009 9 14 12 55 31 0 Crosscompiling with 2.2.4 Lazarus-0.9.29-21694-fpc-2.2.4-20090914-win32.exe and Lazarus-0.9.29-21694-fpc-2.2.4-20090914-cross-arm-wince-win32.exe is OK: cvt1: Now = 2009 9 14 13 20 11 0 cvt2: Now = 2009 9 14 13 20 11 0 Is this Bus error a compiler bug or something else ? Regards . Bogdan
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal