From: Dmitry A. Kazakov <mailbox@dmitry-kazakov.de>
Subject: Requeue in GNAT 3.14p (Linux)
Date: Wed, 19 Jun 2002 15:17:45 +0200
Date: 2002-06-19T15:17:45+02:00 [thread overview]
Message-ID: <im01hu8h0m6u108jfu2rfapusepqvnh5v4@4ax.com> (raw)
Hi!
The following code is the distilled problem. When a chain of external
requeues returns back to a protected object it causes a hang-up on the
last requeue. It happens in GNAT 3.14p under Linux. Interestingly is
that under Windows NT it works. I found nothing in ARM that forbids
that. Is it a GNAT bug?
------------------------------ test.adb
with Ping_Pong; use Ping_Pong;
procedure Test is
begin
A.Service;
end Test;
------------------------------ ping_pong.ads
package Ping_Pong is
protected A is
entry Service;
entry Back;
end A;
protected B is
entry Wall;
end B;
end Ping_Pong;
---------------------------- ping_pong.adb
with Text_IO;
package body Ping_Pong is
protected body A is
entry Service when True is
begin
Text_IO.Put_Line ("Service!");
requeue B.Wall;
end Service;
entry Back when True is
begin
Text_IO.Put_Line ("Got it!");
end Back;
end A;
protected body B is
entry Wall when True is
begin
Text_IO.Put_Line ("Wall!");
requeue A.Back;
end Wall;
end B;
end Ping_Pong;
---
Regards,
Dmitry Kazakov
www.dmitry-kazakov.de
next reply other threads:[~2002-06-19 13:17 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-06-19 13:17 Dmitry A. Kazakov [this message]
2002-06-19 14:22 ` Requeue in GNAT 3.14p (Linux) Pascal Obry
2002-06-19 19:20 ` Robert A Duff
2002-06-20 7:11 ` Dmitry A.Kazakov
2002-06-19 14:45 ` Anatoly Chernyshev
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox