comp.lang.ada
 help / color / mirror / Atom feed
From: ncohen@watson.ibm.com (Norman H. Cohen)
Subject: Re: Fixed point operator visibility question
Date: 14 Oct 1994 14:42:46 GMT
Date: 1994-10-14T14:42:46+00:00	[thread overview]
Message-ID: <37m5d6$cp3@watnews1.watson.ibm.com> (raw)
In-Reply-To: 00985E28.98D9FB40.9907@iberia.cca.rockwell.com

In article <00985E28.98D9FB40.9907@iberia.cca.rockwell.com>,
mlc@iberia.cca.rockwell.com (Michael Cook) writes: 

|> My viewpoint is that fixed point division is defined by package
|> STANDARD, see Ada RM, section 4.5.5, para 9-11.  And so the division
|> should be visible without the 'use' clause.

You are quite right.  See also the last two declarations in Annex C,
paragraph 11.

|> Vendor A's claim is that the example deals with visibility of
|> operations of derived types.  The argument is that Fixed_Type is
|> a derived type of an anonymous predefined fixed point type (RM
|> 3.5.9 para 9).
|>
|> The derived type introduces a derived "/" operator, that hides the
|> predefined "/" operator in the scope of the declaration of Fixed_Type
|> (RM 3.4 para 5).

Vendor A is wrong.  The "/" operator in question is not an operation of
the parent fixed-point type.  Rather, it is a "magic" operation that
takes operands of ANY fixed-point type and produces a result of type
universal_fixed.  Thus it is not inherited.

|> package Fixed_Type_Example is
|>
|>    Fixed_Type_Delta : constant := 1.0 / (2.0 ** 27);
|>
|>    type Fixed_Type is delta Fixed_Type_Delta range -16.0 .. 16.0;
|>
|> end Fixed_Type_Example;
|>
|> -------------------------
|>
|> with Fixed_Type_Example;
...
|>    type Value_Type is range -2**15 .. 2**15 - 1;
...
|>       H   : Fixed_Type_Example.Fixed_Type;
|>       PH  : Fixed_Type_Example.Fixed_Type;
|>
|>       PCV : Value_Type;
...
|>       PCV := Value_Type (H / PH);

--
Norman H. Cohen    ncohen@watson.ibm.com



      parent reply	other threads:[~1994-10-14 14:42 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1994-10-13 18:41 Fixed point operator visibility question Michael Cook
1994-10-14 10:26 ` Robert I. Eachus
1994-10-14 14:42 ` Norman H. Cohen [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