* added a safety check to gen_load_cgpara_loc()

git-svn-id: trunk@26024 -
This commit is contained in:
Jonas Maebe 2013-11-10 23:27:05 +00:00
parent 8a0caea0c0
commit 8d1fb0ee1c

View File

@ -4296,9 +4296,6 @@ implementation
end; end;
{ generates the code for incrementing the reference count of parameters and { generates the code for incrementing the reference count of parameters and
initialize out parameters } initialize out parameters }
{ generates the code for incrementing the reference count of parameters and { generates the code for incrementing the reference count of parameters and
@ -4626,10 +4623,17 @@ implementation
{ If the parameter location is reused we don't need to copy { If the parameter location is reused we don't need to copy
anything } anything }
if not reusepara then if not reusepara then
begin
case para.location^.loc of
LOC_REFERENCE,LOC_CREFERENCE:
begin begin
reference_reset_base(href,para.location^.reference.index,para.location^.reference.offset,para.alignment); reference_reset_base(href,para.location^.reference.index,para.location^.reference.offset,para.alignment);
a_load_ref_ref(list,para.def,para.def,href,destloc.reference); a_load_ref_ref(list,para.def,para.def,href,destloc.reference);
end; end;
else
internalerror(2013102301);
end;
end;
end; end;
{ TODO other possible locations } { TODO other possible locations }
else else