EiffelStudio 6.3 Releases

Revision as of 15:18, 21 July 2008 by Manus (Talk | contribs) (Bug fixes)

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.3.x Releases

6.3.x

Placeholder for new stuff since last intermediate release.

New features

Improvements

Feature removed

Bug fixes

  • compiler: Fixed eweasel test#final061 and test#final063 where some kind of code could cause a crash of the compiler during degree -3 with inlining enabled.

User changes

Developer changes

6.3.7.4123 (July 21st 2008)

New features

  • base: Added `sleep' to EXECUTION_ENVIRONMENT and made `sleep' from THREAD_CONTROL obsolete.
  • base: Added `read_xxx_thread_aware' in IO_MEDIUM so that reading a file is not blocking in a multithreaded context.

Improvements

  • Optimized code generation for object test to avoid type evaluation when it is not used and to replace a full-fledged object test with a plain voidness test if an expression type is known to conform to the object test local type at compile time.

Feature removed

Bug fixes

  • runtime: Allowed the runtime to better handle externally created thread by not destroying them upon termination as externally created also means they should be externally killed.
  • process: Fixed an issue with the library when redirecting inputs/outputs of the child process. Sometime we would be missing some characters and cause a memory corruption at the same time.
  • com/compiler: Renamed `eif_com.h' from the compiler delivery into `eif_com_exception.h' as it conflicts with `eif_com.h' from the EiffelCOM library.
  • compiler: Compiler now detects VDRS-4 errors when you redefine a repeatedly inherited routine in at least one but not all branches, but fail to provide a local definition.
  • compiler: Fixed Makefile code generation issue on machine with many cores which could cause a C compilation error because some dependencies are missing in the Makefile targets.
  • compiler: Fixed bug#13881 where if you have a VKCN error when using a routine whose return type is a like argument then it would crash instead of reporting the VKCN error. Improved VKCN error reporting by providing the instruction or expression which causes the problem.
  • compiler: Fixed updated eweasel test#rdtp001 and test#term158 where if TUPLE is not written using upper case characters, then the compiler will crash when trying to analyze the type.
  • runtime: When registering externally created threads, make sure that the runtime does not exit them when no more Eiffel code needs to be run as it must be done by the code that created it. Also made sure that the runtime per thread data are reset to 0 to ensure that we can register/unregister the external thread as many times as needed.

User changes

  • runtime: changed the way files are opened on Windows by ensuring that they cannot be inherited by child processes. This was necessary since one would need to wait for the child process to exit to remove files owned by the parent process.
  • runtime: renamed `eif_thr_sleep' into `eif_sleep'.

Developer changes