From be4d0be10cd79935869ee57b2a2bb1c95d633335 Mon Sep 17 00:00:00 2001 From: michael Date: Fri, 20 Nov 2020 11:35:51 +0000 Subject: [PATCH] * More base address fixes git-svn-id: trunk@47477 - --- packages/fcl-passrc/src/pparser.pp | 3 ++- packages/fcl-passrc/tests/tcprocfunc.pas | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/fcl-passrc/src/pparser.pp b/packages/fcl-passrc/src/pparser.pp index 70b54670cc..5b49392aee 100644 --- a/packages/fcl-passrc/src/pparser.pp +++ b/packages/fcl-passrc/src/pparser.pp @@ -5373,7 +5373,8 @@ begin else // remove legacy or basesysv on MorphOS syscalls begin - if CurTokenIsIdentifier('legacy') or CurTokenIsIdentifier('BaseSysV') or CurTokenIsIdentifier('_ExecBase') then + if CurTokenIsIdentifier('legacy') + or (Curtoken=tkIdentifier) and (Pos('base',LowerCase(CurtokenText))>0) then NextToken; end; end; diff --git a/packages/fcl-passrc/tests/tcprocfunc.pas b/packages/fcl-passrc/tests/tcprocfunc.pas index 7d0f805327..e867a369f4 100644 --- a/packages/fcl-passrc/tests/tcprocfunc.pas +++ b/packages/fcl-passrc/tests/tcprocfunc.pas @@ -124,6 +124,7 @@ type procedure TestCallingConventionVectorCall; procedure TestCallingConventionSysCall; procedure TestCallingConventionSysCallExecbase; + procedure TestCallingConventionSysCallUtilitybase; Procedure TestProcedurePublic; Procedure TestProcedurePublicIdent; Procedure TestFunctionPublic; @@ -826,6 +827,12 @@ begin AssertProc([],[],ccSysCall,0); end; +procedure TTestProcedureFunction.TestCallingConventionSysCallUtilitybase; +begin + ParseProcedure('; syscall _utilityBase 123'); + AssertProc([],[],ccSysCall,0); +end; + procedure TTestProcedureFunction.TestCallingConventionHardFloat; begin ParseProcedure('; HardFloat');