comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Pragma Unreferenced in GNAT GPL 2008
Date: Sat, 5 Jul 2008 09:57:37 +0200
Date: 2008-07-05T09:57:37+02:00	[thread overview]
Message-ID: <lqf1s2wtlwjm.1x8wbvmzckw9d$.dlg@40tude.net> (raw)
In-Reply-To: 6d8f0qF1c5qaU1@mid.individual.net

On Sat, 05 Jul 2008 07:26:49 +0200, Wilhelm Spickermann wrote:

> After installing GNAT GPL 2008 I get unexpected warnings on
> unreferenced variables:
> ...
>       entry Wait (S : Event_State) when True is
>       begin
>          if S = On then
>             requeue Wait_On with abort;
>          else
>             requeue Wait_Off with abort;
>          end if;
>       end Wait;
> 
>       entry Wait_On (S : Event_State) when Value = On is
>          pragma Unreferenced (S);
>       begin
>          null;
>       end Wait_On;
> ...
> "pragma Unreferenced (S);" is honoured by GNAT GPL 2007 and seems
> to be ignored by GNAT GPL 2008. 

Maybe they just have removed it.

But Wait_On need no parameters. It is OK to requeue to a parameterless
entry (9.5.4(3))

P.S. In simple cases, you could try entry families:

   type Event_State is (Signaled, Reset);

   entry Wait (Event_State);

   entry Wait (for S in Event_State) when S = Reset xor Value = On is
   begin
       null;
   end Wait;

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2008-07-05  7:57 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-05  5:26 Pragma Unreferenced in GNAT GPL 2008 Wilhelm Spickermann
2008-07-05  7:57 ` Dmitry A. Kazakov [this message]
2008-07-05 12:26   ` Wilhelm Spickermann
2008-07-05 12:51 ` Simon Wright
2008-07-09  6:37   ` Wilhelm Spickermann
2008-07-06  0:38 ` anon
2008-07-09  6:29   ` Wilhelm Spickermann
2008-07-08  8:28 ` Alex R. Mosteo
2008-07-09  6:06   ` Wilhelm Spickermann
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox