From: ms8k#@andrew.cmu.edu.UUCP
To: outnews#ext.nn.comp.lang.ada@andrew.cmu.edu
Subject: Re: language problem
Date: Wed, 1-Apr-87 18:58:50 EST [thread overview]
Date: Wed Apr 1 18:58:50 1987
Message-ID: <MS.V3.18.ms8k.80021103.harrisburg.ibm032.535.0@andrew.cmu.edu> (raw)
In article <8703261730.AA28726@taurus> amiram@TAURUS.BITNET.UUCP writes:
>A colleague of mine, Yossi Veler of AITECH has come up with the following
>program in Ada, which seems to create a serious problem.
>
>procedure boolsub is
> subtype bool is boolean range true..true;
> type arr is array(1..10) of bool;
> a : arr := (1..10 => true); -- this seems like the only legal value
>begin
> a := not a;
>-- Here a(1)=a(2)=...=a(10)= FALSE !!!! No exception occurs etc.
> a := (1..10 => false);
>-- This does cause an exception
>end boolsub;
>
>The program seems legal : we inspected the LRM and also the implementers
>guide, and we ran it on both the DDC and VERDIX compilers. It seems that
>a combination of innocent features in Ada produces a result that seems to
>contradict with the basic philosophy of the language, that is an object
>posseses a value which is not in the appropriate type.
Verdix Ada v1.5 is completely bogus. Don't be amazed by problems like this.
Another example is
type BYTE is range 0 .. 255;
for BYTE'SIZE use 8;
Verdix compiler says that the size is too small.
type BYTE is new POSITIVE range 0 .. 255;
for BYTE'SIZE use 8;
same thing! 0 as a POSITIVE does not disturb it. The bit sign is still there.
type BYTE is range -128 .. 127
for BYTE'SIZE use 8;
is ok (at last), but is not really what was wanted. Another solution may be
an enumaration of 256 items, a little painful.
____________________________________________________________
Marc A. Scheurer
Arpanet, Bitnet: ms8k@andrew.cmu.edu
UUCP : seismo!andrew.cmu.edu!ms8k
____________________________________________________________
next reply other threads:[~1987-04-01 23:58 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
1987-04-01 23:58 ms8k# [this message]
1987-04-03 0:52 ` language problem deller
-- strict thread matches above, loose matches on Subject: below --
1987-04-08 18:08 drw
1987-04-07 5:53 drw
1987-04-08 1:11 ` keith
1987-04-03 10:35 ms8k#
[not found] <12291366595.33.BRYAN@Sierra.Stanford.EDU>
1987-04-02 20:22 ` ROSENBLUM
1987-04-03 14:49 ` dday
1987-04-06 13:26 ` eric
1987-03-26 17:30 amiram
1987-04-01 15:05 ` joe
1987-04-01 20:12 ` cjh
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox