mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-16 10:19:30 +02:00
* support subscripting record function results on ABI's that return
(some) records in registers (+ internalerror if unsupported record location). Fixes "make all" in top dir on darwin/x86. git-svn-id: trunk@2973 -
This commit is contained in:
parent
155df8d326
commit
2e41b63710
@ -302,7 +302,22 @@ implementation
|
||||
end;
|
||||
end
|
||||
else
|
||||
location_copy(location,left.location);
|
||||
begin
|
||||
location_copy(location,left.location);
|
||||
{ some abi's require that functions return (some) records in }
|
||||
{ registers }
|
||||
case location.loc of
|
||||
LOC_REGISTER:
|
||||
location_force_mem(current_asmdata.CurrAsmList,location);
|
||||
LOC_REFERENCE,
|
||||
LOC_CREFERENCE:
|
||||
;
|
||||
{ record regvars are not supported yet
|
||||
LOC_CREGISTER: }
|
||||
else
|
||||
internalerror(2006031901);
|
||||
end;
|
||||
end;
|
||||
|
||||
inc(location.reference.offset,vs.fieldoffset);
|
||||
{ also update the size of the location }
|
||||
|
Loading…
Reference in New Issue
Block a user