Difference between revisions of "EiffelStudio 15.12 Releases"

m (Improvements: Added a note about removal of the first parameter in ROUTINE classes.)
m (Improvements: Cosmetics.)
Line 26: Line 26:
 
* compiler: test#scoop074 - Propagated controlled status of an object test expression to an associated object test local to avoid unnecessary wrapping for this local.
 
* compiler: test#scoop074 - Propagated controlled status of an object test expression to an associated object test local to avoid unnecessary wrapping for this local.
 
* compiler: bug#19147 - Provided new configuration options are "workbench_c_basket_limit" and "finalized_c_basket_limit" that can be used in ".../studio/eifinit/general.cfg" to specify maximum limits of C files that can be generated in one directory in workbench and finalized modes respectively for the cases when C compilation fails because of too large C files.
 
* compiler: bug#19147 - Provided new configuration options are "workbench_c_basket_limit" and "finalized_c_basket_limit" that can be used in ".../studio/eifinit/general.cfg" to specify maximum limits of C files that can be generated in one directory in workbench and finalized modes respectively for the cases when C compilation fails because of too large C files.
* compiler, library, runtime Removed the first parameter in <e>ROUTINE</e> family classes (<e>PROCEDURE</e>, <e>PREDICATE</e>, <e>FUNCTION</e>). Combined with tuple unfolding, the following type declarations:
+
* compiler, library, runtime - Removed the first parameter in <e>ROUTINE</e> family classes (<e>PROCEDURE</e>, <e>PREDICATE</e>, <e>FUNCTION</e>). Combined with tuple unfolding, the following type declarations:
 
<e>
 
<e>
 
PROCEDURE [A, TUPLE [B, C]]
 
PROCEDURE [A, TUPLE [B, C]]

Revision as of 03:37, 30 October 2015

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

Beta download: https://ftp.eiffel.com/pub/beta/15.11/

15.11.x.x

New features

  • compiler: Supported tuple type unfolding that allows to avoid explicit nested tuple type declarations when there is only one formal generic type that is constrained to a TUPLE type. For example, for the class
FOO [X, T -> TUPLE, Y]

the type declarations

FOO [A, TUPLE [B, C], D]
FOO [A, TUPLE [B, C, E], D]

can be written as

FOO [A, B, C, D]
FOO [A, B, C, E, D]

Improvements

  • compiler: test#scoop074 - Propagated controlled status of an object test expression to an associated object test local to avoid unnecessary wrapping for this local.
  • compiler: bug#19147 - Provided new configuration options are "workbench_c_basket_limit" and "finalized_c_basket_limit" that can be used in ".../studio/eifinit/general.cfg" to specify maximum limits of C files that can be generated in one directory in workbench and finalized modes respectively for the cases when C compilation fails because of too large C files.
  • compiler, library, runtime - Removed the first parameter in ROUTINE family classes (PROCEDURE, PREDICATE, FUNCTION). Combined with tuple unfolding, the following type declarations:
PROCEDURE [A, TUPLE [B, C]]
FUNCTION [A, TUPLE [B, C], D]

are written now as

PROCEDURE [B, C]
FUNCTION [B, C, D]

Feature removed

Bug fixes

  • compiler: test#scoop075 - Fixed a code generation bug in finalized mode for separate feature calls that involve values of a pointer type.
  • compiler: bug#19120 (test#tuple019) - Fixed a bug that caused a compiler exception when a non-conforming value was assigned to a tuple field.

User changes

Developer changes