mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-10-02 22:29:29 +02:00
* better estimation of callparanode complexity
git-svn-id: trunk@31038 -
This commit is contained in:
parent
d9fec2035a
commit
919c539ff5
@ -737,9 +737,24 @@ implementation
|
|||||||
p := tunarynode(p).left;
|
p := tunarynode(p).left;
|
||||||
end;
|
end;
|
||||||
labeln,
|
labeln,
|
||||||
blockn,
|
blockn:
|
||||||
callparan:
|
|
||||||
p := tunarynode(p).left;
|
p := tunarynode(p).left;
|
||||||
|
callparan:
|
||||||
|
begin
|
||||||
|
{ call to decr? }
|
||||||
|
if is_managed_type(tunarynode(p).left.resultdef) and (tcallparanode(p).parasym.varspez=vs_out) then
|
||||||
|
begin
|
||||||
|
result:=NODE_COMPLEXITY_INF;
|
||||||
|
exit;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
inc(result);
|
||||||
|
if (result = NODE_COMPLEXITY_INF) then
|
||||||
|
exit;
|
||||||
|
p := tunarynode(p).left;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
notn,
|
notn,
|
||||||
derefn :
|
derefn :
|
||||||
begin
|
begin
|
||||||
|
Loading…
Reference in New Issue
Block a user