comp.lang.ada
 help / color / mirror / Atom feed
From: sk <noname@myob.com>
Subject: Re: enumeration_io: get error
Date: Sun, 16 Jun 2002 14:59:07 -0500
Date: 2002-06-16T14:59:07-05:00	[thread overview]
Message-ID: <mailman.1024257722.3228.comp.lang.ada@ada.eu.org> (raw)
In-Reply-To: 3D0BF45C.D12DE2BF@acm.org

Hi,

Firstly, I quickly compiled (gnat 3.13p) the example 
and found my predictions about 4 correct entries 
followed by more to be totally WRONG. It seems as if
4 correct entries in a row exit the loop no matter 
how many times the exception handler was invoked.

This would suggest that the ARM (gnat-3.13p-docs)
section on "Exception Handling" statement is in
effect 

    > Then, the sequence_of_statements of the handler 
    > is executed; this execution replaces the 
    > abandoned portion of the execution of the
    > sequence_of_statements

Which I believe is saying that the code is behaving
as follows 

    procedure Tests is
    begin
        ...
        <implicit system exit>
    exception
        when Others =>

            procedure Tests is
            begin
                ...
                <implicit system exit>
            exception
                when Others =>

                    procedure Tests is ...

                        ... Etc until memory overflows
                        ... or four correct values are entered
                        <implicit system exit>

            end Tests;

    end Tests;

Is that a reasonable interpretation of what is going on ? 

Doesn't this then become one of those "erroneous" programs
that the standard says are your own fault ?

--

Jeffrey Carter <jrcarter@acm.org>
> ... carefully review the semantics of Enumeration_IO.Get. ...

I understand your "looked at but not consumed" statement,
but I am not sure (ARM "Input-Output for Enumeration Types")
where there is justification for the different alphabet and 
symbol character treatment. Would you be willing to explain
a little further ?

--
It would seem that the OP has invoked a "two-for-one"
deal on unexpected behaviours :-)


-- 
-------------------------------------
-- Merge vertically for real address
-------------------------------------
s n p @ t . o
 k i e k c c m
-------------------------------------



      reply	other threads:[~2002-06-16 19:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-06-15 21:06 enumeration_io: get error Gino POLIDO
2002-06-15 22:26 ` R. Tim Coslet
2002-06-15 23:10   ` Gino POLIDO
2002-06-15 23:54 ` sk
     [not found] ` <3D0BD39B.FED8A0E4@myob.com>
2002-06-16  0:00   ` sk
2002-06-16  2:12 ` Jeffrey Carter
2002-06-16 19:59   ` sk [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