fcl-passrc: resolver: allow constref

This commit is contained in:
mattias 2019-12-15 14:08:23 +00:00
parent 1e0707f55c
commit 24c18cc178
2 changed files with 9 additions and 8 deletions

View File

@ -7302,7 +7302,7 @@ end;
procedure TPasResolver.FinishArgument(El: TPasArgument);
begin
if not (El.Access in [argDefault,argConst,argVar,argOut]) then
if not (El.Access in [argDefault,argConst,argVar,argOut,argConstRef]) then
RaiseMsg(20191018235644,nNotYetImplemented,sNotYetImplemented,[AccessDescriptions[El.Access]],El);
if El.ArgType<>nil then
CheckUseAsType(El.ArgType,20190123100049,El);

View File

@ -381,7 +381,7 @@ type
// procs
Procedure TestProcParam;
Procedure TestProcParamAccess;
Procedure TestProcParamConstRefFail;
Procedure TestProcParamConstRef;
Procedure TestFunctionResult;
Procedure TestProcedureResultFail;
Procedure TestProc_ArgVarPrecisionLossFail;
@ -5987,14 +5987,15 @@ begin
ParseProgram;
end;
procedure TTestResolver.TestProcParamConstRefFail;
procedure TTestResolver.TestProcParamConstRef;
begin
StartProgram(false);
Add('procedure Run(constref a: word);');
Add('begin');
Add('end;');
Add('begin');
CheckResolverException('not yet implemented: constref',nNotYetImplemented);
Add([
'procedure Run(constref a: word);',
'begin',
'end;',
'begin']);
ParseProgram;
end;
procedure TTestResolver.TestFunctionResult;