fpc/tests/test/cg/tpara4.pp
svenbarth d13838ac0b + add a test which ensures that a "const TVarData" parameter is passed as a reference.
This is required for Delphi compatibility as implementers of IVarInvokable or
  inheritors of TInvokableVariantType need to modify the variant data by using
  a pointer to the TVarData because it's passed as const and thus not modifyable
  by itself.
  This behavior is documented in so far as the C++ builder documentation shows
  that the same parameter is implemented as "const&".

git-svn-id: trunk@48478 -
2021-01-31 21:23:29 +00:00

23 lines
607 B
ObjectPascal

{ This test ensures that a "const TVarData" parameter is passed as a reference.
This is required for Delphi compatibility as implementers of IVarInvokable or
inheritors of TInvokableVariantType need to modify the variant data by using
a pointer to the TVarData because it's passed as const and thus not modifyable
by itself.
This behavior is documented in so far as the C++ builder documentation shows
that the same parameter is implemented as "const&". }
program tpara4;
var
d: TVarData;
procedure Test(const v: TVarData);
begin
if @d <> @v then
Halt(1);
end;
begin
Test(d);
end.