EiffelStudio 6.7 Releases

Revision as of 12:34, 10 August 2010 by Manus (Talk | contribs) (New 6.7.8.4135 release)

Below are not the release notes of EiffelStudio. It is the change log of EiffelStudio intermediate releases and the most important changes are highlighted in green or in red (for breaking changes). The release notes of EiffelStudio can be found at the following URL. You can also download the latest revision here. Information about other version can be found under Category:Releases.

EiffelStudio 6.7.x Releases

6.7.x

Placeholder for new stuff since last intermediate release.

New features

Improvements

Feature removed

Bug fixes

User changes

Developer changes

6.7.8.4135 (August 10th 2010)

New features

  • compiler: New tracing facility in Eiffel code. Currently tracing is done at the runtime level by writing some text in the standard output. This new tracing facility let you execute some user defined Eiffel code at entry and exit of all routine calls. That way you can better track what is going on without endless search in the output.

Improvements

Feature removed

Bug fixes

  • compiler: Fixed eweasel test#ccomp085. Now the compiler ensures that if you have a C external with a specific includes order, it will be respected at compile time.
  • compiler: Fixed eweasel test#exec326. Now the compiler properly generates the REAL_32 values for {REAL_32}.min_value and {REAL_32}.max_value.
  • compiler: Fixed eweasel test#valid243, test#svalid028, test#svalid029, test#tuple004, test#freez032 and test#multicon058. The issue was that when we performed the type checking of inherited routines using prefix/infix we were not using the new name of the prefix/infix operator but still the old one. Thus if it was renamed it would cause a spurious compilation error instead of accepting the code.
  • compiler: Fixed eweasel test#multicon056 and test#multicon057 which prevented usage of objectless call on formal generic parameter using multiconstraints.
  • compiler: Fixed eweasel test#freez032 showing that the inlining of `.hash_code' was incorrect for .NET and C code generation. Melted was OK because no inlining was done and the Eiffel code was executed.
  • compiler: Fixed the following eweasel tests: test#incr295 test#incr302 test#incr307 test#incr309 test#incr324 test#incr331 test#incr332 test#incr346 test#incr372 test#incr373 test#incr374. The main problem was that we did not properly cleaned the TYPE_LIST and the FILTER_LISTs of the compiler when types do not satisfy their constraint anymore. The other issue was with `pattern_id' where when removing an entry from PATTERN_TABLE we only removed it from `info_array' but not from Current, causing `insert' to misbehave.
  • compiler: Fixed incr#315 where we did not rebuild the parent list of a class when one of the inheritance clause had its type changed from expanded to non-expanded or vice-versa.
  • compiler: Fixed incr#345, when you remove the invariant containing an inline agent and you have an error in that class, the inline agent was preserved instead of being removed.

User changes

  • base: Made {ARRAY}.make obsolete. Now one has to use `make_empty' or `make_filled'.

Developer changes

6.7.8.3946 (July 20th 2010)

New features

  • compiler: Added support for gcc on Windows 64-bit, thus removing the need for Microsoft Visual Studio for most type of projects.
  • compiler: UTF-8 source code parser
  • compiler: Unicode (STRING_32) manifest string
  • compiler: Unicode free operator
  • encoding: BOM encoding detector for UTF-8
  • encoding: New localized printer which prints Unicode according to the console encoding.

Improvements

  • store: Prevent C storable to block all threads while waiting from data to be read in retrieved. Now we would wait for the storable type first before blocking all the other runtime threads. This fixes bug#16859.

Feature removed

Bug fixes

User changes

Developer changes