Difference between revisions of "EiffelStudio 14.05 Releases"
(→New features) |
(→User changes) |
||
Line 68: | Line 68: | ||
* EiffelStudio: Changed project settings defaults to complete void safety. | * EiffelStudio: Changed project settings defaults to complete void safety. | ||
* {{Red| compiler: In circa 2000, we allowed $x and $(expr) as expression instead of just argument passing. But while this was good for just $x, $(expr) is actually not supported properly in the code generation. As a consequence we have disallowed $(expr) outside argument passing.}} | * {{Red| compiler: In circa 2000, we allowed $x and $(expr) as expression instead of just argument passing. But while this was good for just $x, $(expr) is actually not supported properly in the code generation. As a consequence we have disallowed $(expr) outside argument passing.}} | ||
+ | * {{Red| wel: Fixed incorrect signatures of wrapping for PostMessage, GetCurrentProcessId and GetWindowThreadProcessID which do not return a pointer but an integer type.}} | ||
===Developer changes=== | ===Developer changes=== |
Revision as of 12:31, 29 January 2014
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 14.05.x Releases
Beta download: ftp://beta:beta57@ftp.eiffel.com/14.05/
14.05.x.x (...)
New features
Improvements
Feature removed
Bug fixes
User changes
Developer changes
14.05.9.4113 (January 29th 2014)
New features
- base: Added epsilon and machine_epsilon queries as requested by users in REAL_32 and REAL_64. Added missing min_value and max_value from the .NET version of REAL_32 and REAL_64.
- espec: Added latest version of ESPEC.
- compiler: The compiler will now report syntax warnings for non-supported empty lists such as {}, () and []. And it will report an error in an export clause if after the type nothing is specified.
Improvements
- argument: we allow the nologo command line option on Unix to ensure that programs have pretty much the exact same command line interface.
- compiler: we now provide syntax warnings for unsupported empty lists such as (), or [], or {}, as well as an empty export clause `export {NONE} end'. It is not ECMA compliant to accept those.
- compiler: made workbench code more compact and faster by about 5 to 9% average.
- Made most libraries compile in the highest level of void-safety except the following ones:
- docking
- editor
- edk
- graph
- memory_analyzer
- testing: Made possible to run AutoTest test cases outside of the AutoTest framework by simply calling them from a normal class.
- vision2: Created a set of classes to make it easier to develop AutoTest tests for code based on vision2.
Feature removed
- library: Removed obsolete feature
{TUPLE}.make
.
Bug fixes
- compiler: bug#18759 (test#iteration004) - Changed processing of
{ITERABLE}.new_cursor
to use a renamed version of the feature in a descendant class rather than the feature having this name. - compiler: bug#17233 (test#term196) - Supported iteration on an expression of a formal generic type.
- compiler: bug#17239 (test#term198) - Fixed a bug that caused a crash when compiling the code that used an inline agent as an iteration expression.
- compiler: bug#16983 (test#anchor055), bug#17034 (test#anchor057) - Fixed a bug that caused a crash when compiling the code with the creation of an object of a qualified anchored type with a formal generic.
- compiler: test#anchor070 - Fixed a bug that might cause compiler crash when nested qualified anchored types with a longer feature chain were involved in qualifiers of other qualified anchored types.
- compiler: bug#16991 (test#anchor056) - Fixed a bug that might cause a compiler to report an unknown feature in a qualified anchored type with a formal generic qualifier constrained only by formal generic types.
- compiler: bug#18795 (test#melt104) - Fixed an issue with address expression (not part of the Eiffel specification, only supported for backward compatibility) when melting code would crash the compiler.
- compiler: fixed test#exec341 where performing an assignment via "{EXT}.fea := bar" would fail at runtime.
- dotnet: Fixed a code generation bug when using across where the .NET code generation would perform a cast on the target type of the expression instead of on the type of the cursor.
- studio: Fixed an issue where if you open EiffelStudio on screen 1 of a multiple screen setup, then maximize EiffelStudio on screen 2. Next time you open EiffelStudio it would open maximized on screen 1 rather than on screen 2.
- wel: Fixed a bug with `set_string_with_newline_conversion' where if the input string had only one character after the last %N, that character would be discarded. That is to say "%Na" would yield "%R%N" instead of "%R%Na". This fixes bug#18783.
- studio: Fixed an issue on Windows where once you set a preference to True, you could never go back to its default value. For example, force debug mode would always be active once set, same for linking the editor and the context tool and many others.
- studio: Fixed a saving issue where each time you saved a document, it will blink instead of not changing anything.
- studio: Fixed a copy and paste texts with multiple lines with some leading tabs into the editor. The cursor in the end is positioned N characters before the place it used to be. (N is the number of lines of the pasted text)
- base_extension: Fixed a crash in ENVIRONMENT_ARGUMENTS when arguments are removed after first access to ENVIRONMENT_ARGUMENTS. This is the case when using `--sync' option in a Vision2 application on Unix.
- process: Fixed redirection of standard error to a file which was redirecting to standard output instead.
- runtime: Fixed bug#18785 and eweasel test#ccomp089 for Linux 32-bit, but the fix will also affect any platform where the C compiler was not doing what we expected to compute the value of NaN, +Infinity and -Infinity for floating numbers.
- compiler: test#anchor071 - Fixed computation of a qualified anchored type that involves a formal generic parameter and feature redeclaration in a descendant of the formal generic constraint.
- studio: Fixed bug#18792, bug#18501 and bug#17626 when searching for a feature while the editor hasn't finished loading.
- studio: Fixed a long standing issue where the new class template had the wrong newline on Windows.
- store: Fixed Autotest test#test_numeric_types and test#test_numeric_types_use_decimal_mode by ensuring that a decimal read from the database (almost like a string representation) is converted to a REAL_64 the same way it is done in class {STRING}.to_real_64, otherwise we get different rounding.
User changes
- EiffelStudio: Moved project setting option Full class checking to Advanced section.
- EiffelStudio: Changed project settings defaults to complete void safety.
- compiler: In circa 2000, we allowed $x and $(expr) as expression instead of just argument passing. But while this was good for just $x, $(expr) is actually not supported properly in the code generation. As a consequence we have disallowed $(expr) outside argument passing.
- wel: Fixed incorrect signatures of wrapping for PostMessage, GetCurrentProcessId and GetWindowThreadProcessID which do not return a pointer but an integer type.