fpc/tests/tbs/tb0609.pp

40 lines
754 B
ObjectPascal

{ %norun }
{$mode objfpc}{$h+}
{$implicitexceptions off}
{ Test compilation of leaf function with managed parameter/local and implicit exceptions disabled. }
type
TCodeTreeNodeDesc = word;
TCodeTreeNode = class
Parent: TCodeTreeNode;
Desc: TCodeTreeNodeDesc;
function GetNodeOfTypes(Descriptors: array of TCodeTreeNodeDesc): TCodeTreeNode;
end;
function TCodeTreeNode.GetNodeOfTypes(Descriptors: array of TCodeTreeNodeDesc
): TCodeTreeNode;
var
i: Integer;
begin
Result:=Self;
while (Result<>nil) do begin
for i:=Low(Descriptors) to High(Descriptors) do
if Result.Desc=Descriptors[i] then exit;
Result:=Result.Parent;
end;
end;
procedure test;
var
s: string;
begin
pointer(s):=nil;
end;
begin
end.