-- { dg-do run } | |
procedure Timing_Events is | |
type Timing_Event_Handler is access protected procedure; | |
protected PO is | |
entry Test; | |
procedure Proc; | |
private | |
Data : Integer := 99; | |
end PO; | |
protected body PO is | |
entry Test when True is | |
Handler : Timing_Event_Handler := Proc'Access; | |
begin | |
Handler.all; | |
end Test; | |
procedure Proc is | |
begin | |
if Data /= 99 then | |
raise Program_Error; | |
end if; | |
end Proc; | |
end PO; | |
begin | |
PO.Test; | |
end; |