blob: f7902966b5686734ced778f7e80187559dbb9b9c [file] [log] [blame]
-- { dg-do run }
with Ada.Text_Io; use Ada.Text_Io;
procedure requeue1 is
protected P is
entry Requeue_Without_Abort;
entry Queue_Without;
procedure Open;
private
Opened: Boolean := False;
end P;
protected body P is
entry Requeue_Without_Abort when True is
begin
-- BUG: after this requeue no time out of the call should be possible
requeue Queue_Without;
end Requeue_Without_Abort;
entry Queue_Without when Opened is
begin
Opened := False;
end Queue_Without;
procedure Open is
begin
Opened := True;
end Open;
end P;
-- Test of timed entry call to an entry with requeue without abort
task T_Without;
task body T_Without is
begin
select
P.Requeue_Without_Abort;
or
delay 1.0;
Put_Line("failed");
end select;
exception
when others => Put_Line ("failed");
end T_Without;
begin
delay 3.0;
P.Open;
end;