HACT 3.0 (Halstenbach)


ISE 4.3 (ISE Eiffel)

    . Input routines such as `read_stream' from class CONSOLE make the
      program crash under Windows. This bug prevents some of the examples
      using IO input (such as the calculator examples) from working.
    . Standard input redirection in mode console under Windows does
      not work and makes the program crash. This bug prevents some of
      the examples using IO input (such as the calculator examples)
      from working.

SE -0.78 (SmallEiffel)

    . Although this is perfectly correct Eiffel, SmallEiffel complains about
      Eiffel identifiers containing upper-case letters. There is a lot of
      these identifiers automatically generated by `gelex' and `geyacc'. In
      order to avoid being overwhelmed by zillions of unjustified warning
      messages, please use the option -no_style_warning.
    . `geyacc' does not compile with SmallEiffel -0.79. You should either
      use SmallEiffel -0.80 or SmallEiffel -0.78.

VE 2.5 (Visual Eiffel)

    . `geyacc', `gelex' and some other examples don't compile with Visual
      Eiffel 2.6, 3.0 beta (Build 5298 and 1299). Visual Eiffel aborts
      the compilation with the following error message:

      Error VESYS416 : System execution terminated due to exception. Exception
       code '10055'. Exception name 'Read access violation'. Routine failed
       'process_class_implementation'. Explanation 'Attempt to read from
       inaccessible address'.

    . Redirection of standard input doesn't work properly: characters are
      echoed on the screen instead of consuming them silently and the end-
      of-file is not detected by `read_stream'. This may cause some troube
      when redirecting standard input to programs generated by `gelex'.
      To work around this problem, make these programs read directly from
      physical files instead of standard input.

      Following is a report demonstrating the standard input redirection
      problems described above. Here is a small program:

        class TOTO

        creation

            make

        feature

            make is
                local
                    f: FILE
                do
                    f := io.input
                    f.read_stream (20)
                    print ('#')
                    print (f.last_string)
                    print ('#')
                end

        end -- class TOTO

      When executed as follows:

      C:\> toto.exe < test.txt

      I would expect to see on the screen 20 or less characters
      within '#' signs. (Let's consider that test.txt has no
      newlines in it to simplify, since `read_stream' seems
      to read only one line at a time.) If test.txt has more
      than 20 characters (say: abcdefghijklmnopqrstuvwxyz'EOF'),
      here is what I get:

      abcdefghijklmnopqrst
      #abcdefghijklmnopqrst#

      Since the standard input is redirected, the first line
      which has been echoed when reading the file should not
      appear in the screen. Characters should be echoed only
      when the text is entered from the keyboard.

      Now, if test.txt has less than 20 characters (say:
      abcdef'EOF'), here is what I get:

      abcdef
      #abcdef              #

      We still have the same problem as above, but you can also
      notice that the EOF has not been detected: `last_string'
      has been padded with space characters upto 20 characters.

