From bc5e1be7b1c2406d9ebab12e49362919e240e6f6 Mon Sep 17 00:00:00 2001 From: florian Date: Sun, 20 Aug 2006 09:37:24 +0000 Subject: [PATCH] * fixed object constructor handling for 64 bit CPUs git-svn-id: trunk@4465 - --- compiler/pdecobj.pas | 4 ++++ compiler/pdecsub.pas | 4 ++++ compiler/psystem.pas | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/compiler/pdecobj.pas b/compiler/pdecobj.pas index 1aa7506de0..840e9d91c1 100644 --- a/compiler/pdecobj.pas +++ b/compiler/pdecobj.pas @@ -78,7 +78,11 @@ implementation if is_class(pd._class) then pd.rettype.setdef(pd._class) else +{$ifdef CPU64bit} + pd.rettype:=bool64type; +{$else CPU64bit} pd.rettype:=bool32type; +{$endif CPU64bit} constructor_head:=pd; end; diff --git a/compiler/pdecsub.pas b/compiler/pdecsub.pas index 3986ffc7ca..47d868b616 100644 --- a/compiler/pdecsub.pas +++ b/compiler/pdecsub.pas @@ -1015,7 +1015,11 @@ implementation if is_class(pd._class) then pd.rettype.setdef(pd._class) else +{$ifdef CPU64bit} + pd.rettype:=bool64type; +{$else CPU64bit} pd.rettype:=bool32type; +{$endif CPU64bit} end; end; diff --git a/compiler/psystem.pas b/compiler/psystem.pas index 960927368e..b20f2fd075 100644 --- a/compiler/psystem.pas +++ b/compiler/psystem.pas @@ -291,7 +291,7 @@ implementation addtype('$boolean',booltype); addtype('$boolean16',bool16type); addtype('$boolean32',bool32type); - addtype('$boolean64',bool32type); + addtype('$boolean64',bool64type); addtype('$void_pointer',voidpointertype); addtype('$char_pointer',charpointertype); addtype('$widechar_pointer',widecharpointertype); @@ -376,7 +376,7 @@ implementation loadtype('boolean',booltype); loadtype('boolean16',bool16type); loadtype('boolean32',bool32type); - loadtype('boolean64',bool32type); + loadtype('boolean64',bool64type); loadtype('void_pointer',voidpointertype); loadtype('char_pointer',charpointertype); loadtype('widechar_pointer',widecharpointertype);