comp.lang.ada
 help / color / mirror / Atom feed
From: Patrick Noffke <patrick.noffke@gmail.com>
Subject: Re: Fixed-point question
Date: Mon, 29 Jun 2015 06:28:12 -0700 (PDT)
Date: 2015-06-29T06:28:12-07:00	[thread overview]
Message-ID: <a73b5d2c-5fb6-4374-bab0-fa885e3f43df@googlegroups.com> (raw)
In-Reply-To: <876168sx28.fsf@theworld.com>

On Saturday, June 27, 2015 at 3:42:11 PM UTC-5, Bob Duff wrote:
> > For C2, the compiler is looking for a visible "/" that yields a result of
> > Fixed_Type, and only Fixed_Type's "/" does that.
> 
> Well, fixed-point division is kind of magical.  The individual
> fixed-point types don't have a "/" that takes parameters of the type and
> returns the same type, but there's a "/" on universal_fixed that can be
> used on any fixed-point types, and the two operands and result can all
> be of different fixed-point types.  See 4.5.5(18).  Similar for "*".
> There are also mixed fixed-integer ops for each fixed-point type.
> 
> There's a rule somewhere that says the context has to provide
> the type of the result, so the compiler knows how much precision
> is needed.  E.g. you can say "X := Y * Z;" but not
> "X := Y * Z * W;".
> 

But for C2 why is the compiler implicitly converting N and D to universal_fixed before doing the division?  Isn't it just as valid to treat the constants as universal_real and use the root_real "/" operator first and then do the conversion?  I don't see this discussed in 8.6 (29).  There must be another rule for type conversion taking preference over division.

Thanks,
Patrick

  parent reply	other threads:[~2015-06-29 13:28 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-26 13:20 Fixed-point question Patrick Noffke
2015-06-26 16:56 ` Jeffrey R. Carter
2015-06-26 18:21   ` Patrick Noffke
2015-06-26 20:21     ` Anh Vo
2015-06-26 20:25     ` Jeffrey R. Carter
2015-06-27  2:55       ` Patrick Noffke
2015-06-26 23:14     ` Qun-Ying
2015-06-27  3:00       ` Patrick Noffke
2015-06-27  4:44         ` Jeffrey R. Carter
2015-06-27 17:59           ` Patrick Noffke
2015-06-27 18:38             ` Jeffrey R. Carter
2015-06-27 19:20               ` Bob Duff
2015-06-27 19:57                 ` Jeffrey R. Carter
2015-06-27 20:42                   ` Bob Duff
2015-06-28 11:39                     ` Brian Drummond
2015-06-29 13:28                     ` Patrick Noffke [this message]
2015-06-29 14:13                       ` Bob Duff
2015-06-27 23:41               ` Anh Vo
  -- strict thread matches above, loose matches on Subject: below --
1995-04-01  0:00 Garlington KE
1995-04-06  0:00 ` Robert Dewar
1995-04-07  0:00   ` Garlington KE
1995-04-07  0:00     ` Robert Dewar
1995-04-07  0:00   ` Robert I. Eachus
1995-04-07  0:00     ` Robert Dewar
replies disabled

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