* fixed webtbs/tw2514 for darwin/i386 (and a similar bug for win32):

you get an internalerror if you try to keep a 0-byte record in
    a register (because the paramgr then tries to allocate a register
    of size OS_NO)

git-svn-id: trunk@2929 -
This commit is contained in:
Jonas Maebe 2006-03-15 21:48:32 +00:00
parent 2a90c43cea
commit 5155de6d61

View File

@ -103,6 +103,7 @@ unit cpupara;
{ Win32 GCC returns small records in the FUNCTION_RETURN_REG.
For stdcall we follow delphi instead of GCC }
if (calloption in [pocall_cdecl,pocall_cppdecl]) and
(def.size>0) and
(def.size<=8) then
begin
result:=false;
@ -116,7 +117,8 @@ unit cpupara;
case def.deftype of
recorddef :
begin
if (def.size <= 8) then
if (def.size > 0) and
(def.size <= 8) then
begin
result := false;
exit;