* better fix for tw1623 (generates more optimal code)

git-svn-id: trunk@5390 -
This commit is contained in:
Jonas Maebe 2006-11-15 14:15:00 +00:00
parent 248046320a
commit 5444207df8

View File

@ -2353,7 +2353,7 @@ implementation
{ po_inline is not yet unset (since set_resulttype needs }
{ it to determine whether the resulttype location may be }
{ changed) }
typecheckpass(para.left);
firstpass(para.left);
{ create temps for value parameters, function result and also for }
{ const parameters which are passed by value instead of by reference }
@ -2374,7 +2374,7 @@ implementation
{ substitute the dereferenced temp in the inlined function }
{ We can't do this if we can't take the address of the }
{ parameter expression, so in that case assign to a temp }
(para.left.expectloc in [LOC_CSUBSETREG,LOC_SUBSETREG]) or
not(para.left.expectloc in [LOC_REFERENCE,LOC_CREFERENCE,LOC_CONSTANT]) or
((paracomplexity > 1) and
(not valid_for_addr(para.left,false) or
(para.left.nodetype = calln) or