From: Stephen Leake <stephen_leake@stephe-leake.org>
Subject: Re: embed accept statement in procedures not possible?
Date: Sat, 05 May 2007 19:54:31 -0400
Date: 2007-05-05T19:54:31-04:00 [thread overview]
Message-ID: <uslaaygg8.fsf@stephe-leake.org> (raw)
In-Reply-To: 1178291081.936739.131740@c35g2000hsg.googlegroups.com
Gerd <GerdM.O@t-online.de> writes:
> Hi all,
>
> I work with GNAT 3.15 on Windows XP. My problem is that I want
> structure my program in a way that is not accepted by GNAT, but I
> cannot understand why.
>
> My code (schematic only):
>
> task t is
> entry e;
> end t;
>
> task body t is
> procedure p is
> begin
> accept e;
> end p;
> begin
> p;
> end t;
>
> GNAT tells me: "enclosing body for accept must be a task". But - the
> accept in procedure p _is_ in a task. So why is this not allowed?
>
> My accept statement is a bit longer and needed a few times in
> different situations. Therefore I don't want to "copy and paste" this
> code directly in the task body.
You can make the body of the accept call a shared procedure:
task body t is
procedure p is
begin
...;
end p;
begin
accept e do
p;
end;
...
accept e do
p;
end;
...
end t;
>
>
> Gerd
>
--
-- Stephe
prev parent reply other threads:[~2007-05-05 23:54 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-04 15:04 embed accept statement in procedures not possible? Gerd
2007-05-04 16:58 ` Jean-Pierre Rosen
2007-05-04 19:45 ` Adam Beneschan
2007-05-09 7:12 ` Jean-Pierre Rosen
2007-05-09 14:56 ` Adam Beneschan
2007-05-10 11:43 ` Jean-Pierre Rosen
2007-05-10 17:26 ` Pascal Obry
2007-05-04 17:03 ` (see below)
2007-05-04 21:22 ` adaworks
2007-05-05 23:54 ` Stephen Leake [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox