mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 21:33:17 +02:00
* don't do tail recursion optimization on types requiring init/final code
git-svn-id: trunk@6031 -
This commit is contained in:
parent
3ee2cef1b9
commit
42cf5f7b2b
@ -186,7 +186,12 @@ unit opttail;
|
|||||||
with tparavarsym(p.paras[i]) do
|
with tparavarsym(p.paras[i]) do
|
||||||
if (varspez in [vs_out,vs_var]) or
|
if (varspez in [vs_out,vs_var]) or
|
||||||
((varspez=vs_const) and
|
((varspez=vs_const) and
|
||||||
(paramanager.push_addr_param(varspez,vardef,p.proccalloption))) then
|
(paramanager.push_addr_param(varspez,vardef,p.proccalloption)) or
|
||||||
|
{ parameters requiring tables are too complicated to handle
|
||||||
|
and slow down things anyways so a tail recursion call
|
||||||
|
makes no sense
|
||||||
|
}
|
||||||
|
vardef.needs_inittable) then
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
labelnode:=clabelnode.create(cnothingnode.create);
|
labelnode:=clabelnode.create(cnothingnode.create);
|
||||||
|
Loading…
Reference in New Issue
Block a user