* genintconstnode now returns cardinals instead of int64 constants if possible

This commit is contained in:
Jonas Maebe 2000-12-16 15:58:48 +00:00
parent 200e1d4b25
commit d3a8cc7fc8

View File

@ -146,13 +146,17 @@ implementation
function genintconstnode(v : TConstExprInt) : tordconstnode;
var
i : TConstExprInt;
i,i2 : TConstExprInt;
begin
{ we need to bootstrap this code, so it's a little bit messy }
i:=2147483647;
{ maxcardinal }
i2 := i+i+1;
if (v<=i) and (v>=-i-1) then
genintconstnode:=genordinalconstnode(v,s32bitdef)
else if (v > i) and (v <= i2) then
genintconstnode:=genordinalconstnode(v,u32bitdef)
else
genintconstnode:=genordinalconstnode(v,cs64bitdef);
end;
@ -658,7 +662,10 @@ begin
end.
{
$Log$
Revision 1.13 2000-12-15 13:26:01 jonas
Revision 1.14 2000-12-16 15:58:48 jonas
* genintconstnode now returns cardinals instead of int64 constants if possible
Revision 1.13 2000/12/15 13:26:01 jonas
* only return int64's from functions if it int64funcresok is defined
+ added int64funcresok define to options.pas