diff --git a/compiler/symdef.pas b/compiler/symdef.pas index ea8edc7bbb..671e6a5102 100644 --- a/compiler/symdef.pas +++ b/compiler/symdef.pas @@ -2584,7 +2584,7 @@ implementation constructor tarraydef.create_from_pointer(def:tdef); begin { use -1 so that the elecount will not overflow } - self.create(0,high(aint)-1,s32inttype); + self.create(0,high(asizeint)-1,s32inttype); arrayoptions:=[ado_IsConvertedPointer]; setelementdef(def); end; diff --git a/compiler/symtable.pas b/compiler/symtable.pas index d056270647..6983000d54 100644 --- a/compiler/symtable.pas +++ b/compiler/symtable.pas @@ -1020,7 +1020,7 @@ implementation if l>high(asizeint)-sym.fieldoffset then begin Message(sym_e_segment_too_large); - _datasize:=high(aint); + _datasize:=high(asizeint); end else _datasize:=sym.fieldoffset+l; @@ -1194,8 +1194,8 @@ implementation if bitsize>high(asizeint)-databitsize then begin Message(sym_e_segment_too_large); - _datasize:=high(aint); - databitsize:=high(aint); + _datasize:=high(asizeint); + databitsize:=high(asizeint); end else begin @@ -1210,7 +1210,7 @@ implementation if tfieldvarsym(sym).getsize>high(asizeint)-_datasize then begin Message(sym_e_segment_too_large); - _datasize:=high(aint); + _datasize:=high(asizeint); end else _datasize:=tfieldvarsym(sym).fieldoffset+offset;