mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 23:29:13 +02:00
* para items are now reversed for pascal calling conventions
This commit is contained in:
parent
009bd44420
commit
d85e1a9bf4
@ -1770,6 +1770,9 @@ const
|
|||||||
{ insert parentfp parameter if required }
|
{ insert parentfp parameter if required }
|
||||||
insert_parentfp_para(pd);
|
insert_parentfp_para(pd);
|
||||||
|
|
||||||
|
if pd.proccalloption=pocall_pascal then
|
||||||
|
tparaitem(pd.para.first):=reverseparaitems(tparaitem(pd.para.first));
|
||||||
|
|
||||||
currpara:=tparaitem(pd.para.first);
|
currpara:=tparaitem(pd.para.first);
|
||||||
while assigned(currpara) do
|
while assigned(currpara) do
|
||||||
begin
|
begin
|
||||||
@ -2146,7 +2149,10 @@ const
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.139 2003-09-28 21:44:55 peter
|
Revision 1.140 2003-10-01 16:49:05 florian
|
||||||
|
* para items are now reversed for pascal calling conventions
|
||||||
|
|
||||||
|
Revision 1.139 2003/09/28 21:44:55 peter
|
||||||
* fix check that filedef needs var para
|
* fix check that filedef needs var para
|
||||||
|
|
||||||
Revision 1.138 2003/09/28 17:55:04 peter
|
Revision 1.138 2003/09/28 17:55:04 peter
|
||||||
|
@ -745,6 +745,7 @@ interface
|
|||||||
pbestrealtype : ^ttype = @s64floattype;
|
pbestrealtype : ^ttype = @s64floattype;
|
||||||
{$endif ARM}
|
{$endif ARM}
|
||||||
|
|
||||||
|
function reverseparaitems(p: tparaitem): tparaitem;
|
||||||
function mangledname_prefix(typeprefix:string;st:tsymtable):string;
|
function mangledname_prefix(typeprefix:string;st:tsymtable):string;
|
||||||
|
|
||||||
{$ifdef GDB}
|
{$ifdef GDB}
|
||||||
@ -793,6 +794,24 @@ implementation
|
|||||||
Helpers
|
Helpers
|
||||||
****************************************************************************}
|
****************************************************************************}
|
||||||
|
|
||||||
|
function reverseparaitems(p: tparaitem): tparaitem;
|
||||||
|
var
|
||||||
|
hp1, hp2: tparaitem;
|
||||||
|
begin
|
||||||
|
hp1:=nil;
|
||||||
|
while assigned(p) do
|
||||||
|
begin
|
||||||
|
{ pull out }
|
||||||
|
hp2:=p;
|
||||||
|
p:=tparaitem(p.next);
|
||||||
|
{ pull in }
|
||||||
|
tparaitem(hp2.next):=hp1;
|
||||||
|
hp1:=hp2;
|
||||||
|
end;
|
||||||
|
reverseparaitems:=hp1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
function mangledname_prefix(typeprefix:string;st:tsymtable):string;
|
function mangledname_prefix(typeprefix:string;st:tsymtable):string;
|
||||||
var
|
var
|
||||||
s,
|
s,
|
||||||
@ -5876,7 +5895,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.166 2003-10-01 15:32:58 florian
|
Revision 1.167 2003-10-01 16:49:05 florian
|
||||||
|
* para items are now reversed for pascal calling conventions
|
||||||
|
|
||||||
|
Revision 1.166 2003/10/01 15:32:58 florian
|
||||||
* fixed FullProcName to handle constructors, destructors and operators correctly
|
* fixed FullProcName to handle constructors, destructors and operators correctly
|
||||||
|
|
||||||
Revision 1.165 2003/10/01 15:00:02 peter
|
Revision 1.165 2003/10/01 15:00:02 peter
|
||||||
|
Loading…
Reference in New Issue
Block a user