comp.lang.ada
 help / color / mirror / Atom feed
From: Gautier.DeMontmollin@maths.unine.ch
Subject: Re: Ada or C++ acting 'correctly' here?
Date: 1999/03/02
Date: 1999-03-02T00:00:00+00:00	[thread overview]
Message-ID: <qH8mEcCfxEsj@nedcu4> (raw)
In-Reply-To: 7bg0pc$5a4$1@ffx2nh3.news.uu.net

"Willliam V" <nospam@nospam.com> writes:

> 500000000*7 is a negative quantity.

Wow! A new axiom in mathematics!!

> C++ prints out
> what you ask it to do.

Absolutely - it does the modulo 2^32 and returns a signed value.

> try unsigned long l = 500000000*7;
> cout << l;
> or even
> cout << ((unsigned long )500000000)*7);

BTW: shouldn't the output be *unsigned* (modulo 2^32) ?!

> If Linux 'd make the unsigned long to be 64 bit, you Ada would
> have compiled fine.

The standard integer would be 64 bit - but the "problem" would
come again with 2^62 * 7...

> So the Ada compiler you are using is
> relying very heavily on the underlying C machinery.

Not that much, since the Ada compiler *did* detect the overflow
- as it should !

> Don't be
> too fast to blame C or C++

It was a question about languages behaviours...
Did someone blame C/C++ ?

-- 
Gautier

--------
Homepage: http://www.unine.ch/math/Personnel/Assistants/Gautier/Montmollin.html
Software: http://www.unine.ch/math/Personnel/Assistants/Gautier/Gaut_FTP.htm





  parent reply	other threads:[~1999-03-02  0:00 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-02-27  0:00 Ada or C++ acting 'correctly' here? bill
1999-02-27  0:00 ` Florian Weimer
     [not found]   ` <36e8e201.48455851@netnews.worldnet.att.net>
1999-03-18  0:00     ` bglbv
1999-02-27  0:00 ` Claudius Proculus
1999-02-27  0:00   ` Biju Thomas
1999-02-28  0:00     ` robert_dewar
1999-02-28  0:00       ` Florian Weimer
1999-03-01  0:00         ` dewar
1999-02-27  0:00 ` Steve Doiel
1999-02-27  0:00 ` Matthew Heaney
1999-02-27  0:00 ` Gautier.DeMontmollin
1999-02-28  0:00 ` William McKenzie
1999-03-01  0:00   ` Hubert B. Keller
1999-03-01  0:00   ` fraser
1999-02-28  0:00 ` robert_dewar
1999-03-02  0:00 ` Willliam V
1999-03-02  0:00   ` Pascal Obry
1999-03-02  0:00   ` Gautier.DeMontmollin [this message]
1999-03-02  0:00     ` kvisko
1999-03-02  0:00   ` robert_dewar
1999-03-02  0:00   ` SpamSpamSpam
replies disabled

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