* add "readonly" attribute for constant pointer parameters on LLVM

git-svn-id: trunk@43089 -
This commit is contained in:
Jonas Maebe 2019-09-29 10:29:57 +00:00
parent b99323bb19
commit 49026e1261

View File

@ -755,15 +755,18 @@ implementation
vs_value, vs_value,
vs_const: vs_const:
begin begin
encodedstr:=encodedstr+' dereferenceable(' encodedstr:=encodedstr+' readonly dereferenceable('
end; end;
vs_var, vs_var,
vs_out, vs_out:
vs_constref:
begin begin
{ while normally these are not nil, it is technically possible { while normally these are not nil, it is technically possible
to pass nil via ptrtype(nil)^ } to pass nil via ptrtype(nil)^ }
encodedstr:=encodedstr+' dereferenceable_or_null(' encodedstr:=encodedstr+' dereferenceable_or_null(';
end;
vs_constref:
begin
encodedstr:=encodedstr+' readonly dereferenceable_or_null(';
end; end;
else else
internalerror(2018120801); internalerror(2018120801);