mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-07 15:22:31 +01:00
Author:manus
Date:2009-12-09T19:34:23.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@369 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 39 KiB |
@@ -0,0 +1,3 @@
|
||||
title=AutoTest interface annotated 01
|
||||
author=halw
|
||||
path=content/autotest-interface-annotated-01
|
||||
@@ -5,24 +5,43 @@
|
||||
==What's new==
|
||||
{{seealso|[[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}
|
||||
*Added support for transient attribute. A transient attribute is an attribute which is not stored at runtime and for which its absence in the retrieval system has no effect. Only implemented for C based storable.
|
||||
* New loop constructs implementation per a draft specification of the next ECMA standard. Although the compiler support the new construct, the library counterpart was not included in this release. It will be available as a separate download a few weeks after the 6.5 release.
|
||||
|
||||
==Improvements==
|
||||
No major improvements in 6.5 as this release was mostly focused on quality improvements.
|
||||
|
||||
==Changes==
|
||||
* All the void-safe project configuration files have been removed from the non-experimental version. The rationale is that the usage of ARRAY and SPECIAL would not be void-safe and you need to switch to the experimental version to ensure complete void-safety.
|
||||
|
||||
==Bug fixes==
|
||||
|
||||
===Language issues===
|
||||
* Ensured that code generation in .NET mode with experimental compiler worked properly. The current limitation is that manifest type instances are not unique unlike their classic counterpart and that {ANY}.generating_type cannot be applied on .NET types.
|
||||
|
||||
===Compiler issues===
|
||||
* Fixed eweasel test#incr313, test#incr317 and test#incr318 where removal of a convert clause was not taken into account by the compiler.
|
||||
* Fixed eweasel test#svalid022 where conversion to a target of a detachable type was not accepted, and also now the compiler will verify that the source of the conversion is always attached. Ensured that the source or the target type mentioned in a convert clause is attached.
|
||||
* Fixed eweasel test#svalid024 where using an inspect clause with static constant access would failed to compile in a descendant class when `full class checking' is enabled.
|
||||
* Fixed eweasel test#term156 and test#svalid025 where compiler would crash while compiling code that needs to be regenerated in descendant classes (e.g. code from precondition) involving anchors or formal generic parameters.
|
||||
* Supported tracking changes made to a shared library definition file to trigger freeze automatically when there are any modifications to this file.
|
||||
* Fixed bug on Unix platforms where spaces in project/installation paths failed to create the necessary symbolic links, when using precompiles.
|
||||
* Fixed eweasel test#final083 where compiler would crash when inlining certain type of code involving generic classes.
|
||||
|
||||
|
||||
===Runtime/code generation issues===
|
||||
* Fixed eweasel test#final086 where an object test could evaluate more than once the expression.
|
||||
* Fixed bug#13969 where an Eiffel generated DLL trying to print something to the console would cause a crash
|
||||
* Fixed bug#15553 where querying <eiffel>{FILE}.is_socket</eiffel> and some other file properties would not work properly on some Unix platforms (Solaris in particular).
|
||||
* Fixed bug#13852 and bug#13816 where allocating large arrays would cause a memory corruption.
|
||||
* Improved runtime protection of certain routines if a signal is delivered to avoid either corruption or memory leak (Fixes bug#13851, bug#13842, bug#13849, bug#13850 and bug#13840).
|
||||
* Fixed bug#15241 where finalizing with assertions enabled would cause a C compilation error when freezing later in the same EiffelStudio session.
|
||||
* Fixed a bug in CECIL macros which would cause a segmentation violation on some platforms at the first GC cycle.
|
||||
* Fixed creation of manifest array with an attached actual generic parameter to not throw a precondition violation in void-safe mode.
|
||||
* Fixed eweasel test#array006 where creating a manifest array would trigger an unjustified invariant violation.
|
||||
* Fixed eweasel test#final084 where compiler would generate incorrect type at run-time causing some memory corruption or a general failure.
|
||||
|
||||
|
||||
===Store/Retrieve issues===
|
||||
|
||||
* Fixed bug#16395 and eweasel test#store026 to avoid mismatch if the metadata stored in `eskelet' is simplified or not (i.e. for class A[G] feature g: B[G], and then having A [INTEGER] could either describe `g' as either `B[G]' or `B[INTEGER]', even though different they are the same type and should not yield a mismatch).
|
||||
* Fixed eweasel test#store028 where retrieving an object whose type involves a TUPLE type without a TUPLE instance could corrupt the retrieval system.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user