* "inherit" the nf_internal flag in tinlinenode.getaddsub_for_incdec

git-svn-id: trunk@34802 -
This commit is contained in:
florian 2016-11-05 23:06:06 +00:00
parent 4242949453
commit 0bc1e7e23b

View File

@ -3938,9 +3938,14 @@ implementation
hpp := caddnode.create_internal(addn,hp,hpp) hpp := caddnode.create_internal(addn,hp,hpp)
else else
hpp := caddnode.create_internal(subn,hp,hpp); hpp := caddnode.create_internal(subn,hp,hpp);
{ assign result of addition } { assign result of addition }
{ inherit internal flag }
if not(is_integer(resultnode.resultdef)) then if not(is_integer(resultnode.resultdef)) then
inserttypeconv(hpp,corddef.create( begin
if nf_internal in flags then
inserttypeconv_internal(hpp,corddef.create(
{$ifdef cpu64bitaddr} {$ifdef cpu64bitaddr}
s64bit, s64bit,
{$else cpu64bitaddr} {$else cpu64bitaddr}
@ -3950,10 +3955,23 @@ implementation
get_max_value(resultnode.resultdef), get_max_value(resultnode.resultdef),
true)) true))
else else
inserttypeconv(hpp,corddef.create(
{$ifdef cpu64bitaddr}
s64bit,
{$else cpu64bitaddr}
s32bit,
{$endif cpu64bitaddr}
get_min_value(resultnode.resultdef),
get_max_value(resultnode.resultdef),
true))
end
else
begin
if nf_internal in flags then if nf_internal in flags then
inserttypeconv_internal(hpp,resultnode.resultdef) inserttypeconv_internal(hpp,resultnode.resultdef)
else else
inserttypeconv(hpp,resultnode.resultdef); inserttypeconv(hpp,resultnode.resultdef);
end;
{ avoid any possible warnings } { avoid any possible warnings }
inserttypeconv_internal(hpp,resultnode.resultdef); inserttypeconv_internal(hpp,resultnode.resultdef);