mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-01 02:02:44 +02:00
+ tinlinenode.createintern
* do not do range checking on constants created by pred/succ if these nodes are created internally git-svn-id: trunk@31471 -
This commit is contained in:
parent
049491a573
commit
f00a55ae08
@ -34,6 +34,7 @@ interface
|
||||
tinlinenode = class(tunarynode)
|
||||
inlinenumber : byte;
|
||||
constructor create(number : byte;is_const:boolean;l : tnode);virtual;
|
||||
constructor createintern(number : byte;is_const:boolean;l : tnode);virtual;
|
||||
constructor ppuload(t:tnodetype;ppufile:tcompilerppufile);override;
|
||||
procedure ppuwrite(ppufile:tcompilerppufile);override;
|
||||
function dogetcopy : tnode;override;
|
||||
@ -138,6 +139,14 @@ implementation
|
||||
end;
|
||||
|
||||
|
||||
constructor tinlinenode.createintern(number : byte; is_const : boolean;
|
||||
l : tnode);
|
||||
begin
|
||||
create(number,is_const,l);
|
||||
include(flags,nf_internal);
|
||||
end;
|
||||
|
||||
|
||||
constructor tinlinenode.ppuload(t:tnodetype;ppufile:tcompilerppufile);
|
||||
begin
|
||||
inherited ppuload(t,ppufile);
|
||||
@ -2286,7 +2295,7 @@ implementation
|
||||
result:=create_simplified_ord_const(vl,resultdef,forinline)
|
||||
else
|
||||
{ check the range for enums, chars, booleans }
|
||||
result:=cordconstnode.create(vl,left.resultdef,true)
|
||||
result:=cordconstnode.create(vl,left.resultdef,not(nf_internal in flags))
|
||||
end
|
||||
end;
|
||||
in_low_x,
|
||||
|
Loading…
Reference in New Issue
Block a user