From: bobduff@dsd.camb.inmet.com (Bob Duff)
Subject: Re: GNAT-Problem '+'-operator with Count
Date: Wed, 7 Dec 1994 22:54:58 GMT
Date: 1994-12-07T22:54:58+00:00 [thread overview]
Message-ID: <D0GqBM.IzH@inmet.camb.inmet.com> (raw)
In-Reply-To: 2ee30bbc.4a534e4f4445@jsnode.equinox.gen.nz
In article <2ee30bbc.4a534e4f4445@jsnode.equinox.gen.nz>,
Joseph Skinner <joe@jsnode.equinox.gen.nz> wrote:
>In article <3bn74o$go5@tucs6.rz.tu-cottbus.de>,
>Andreas Krohn <ak@informatik.tu-cottbus.de> wrote:
>> 148. procedure solve_matrix(source: in matrix;target: in out matrix) is
>> 149. x,y,i,j:Count; --akt. Pos. in Matrix
>> 150. nachbarn:INTEGER; --Anzahl der Nachbarn jeder Zelle
>> 151. a,b:Count;
>> 152.
>> 153. begin
>> 154. for i in feldmin..feldmax loop
>> 155. for j in feldmin..feldmax loop
>> 156. nachbarn:=0; --neue Zelle 0 setzen
>> 157. for x in 1..3 loop --nachbarn ermitteln
>> 158. for y in 1..3 loop
>> 159. a:=i+x-2;
>> |
>> invalid operand types for operator "+"
>>z
>>z 160. b:=j+y-2;
>> |
>> invalid operand types for operator "+"
>>z
>>z 161. if source(a,b)=TRUE then nachbarn:=nachbarn+1;
>> 162. end if;
>> 163. end loop;
The program fragment doesn't show enough to be sure. In particular,
what type are feldmin and feldmax? This type will be used as the type
of i and j. However, x and y are of type Integer, since there's a
special rule saying that if the bounds are universal_integer
(e.g. literals), then it uses Integer. So if feldmin and feldmax are
not of type Integer, then you've got a type mismatch. If that's the
problem, try this:
for x in Whatever_Type_It_Is range 1..3 loop ...
I've gotten into the habit of *always* giving the type name in a for
loop, since I think the default-to-Integer rule confuses things, and
anyway it makes the code more readable.
>At a guess the problem is that the definitions for '+' is not visible to
>the program. Check out your with and use statements to make sure that
>the definition is visible.
>
>On the other hand I may be spouting BS and I'm sure that someone else
>will tell me if I am.
Hard to say. My answer's a guess, too. Anyway, in an extremely polite
forum such as this, who would ever accuse anyone of "spouting BS"?
Instead, I respectfully submit that my guess is more likely correct than
yours. ;-)
- Bob
--
Bob Duff bobduff@inmet.com
Oak Tree Software, Inc.
Ada 9X Mapping/Revision Team (Intermetrics, Inc.)
next prev parent reply other threads:[~1994-12-07 22:54 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
1994-12-02 13:23 GNAT-Problem '+'-operator with Count Andreas Krohn
1994-12-03 12:24 ` Jim Marks
1994-12-05 12:46 ` Joseph Skinner
1994-12-07 22:54 ` Bob Duff [this message]
1994-12-08 19:45 ` Jahn Rentmeister
1994-12-09 15:33 ` 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