mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2026-04-04 17:19:23 +02:00
Author:admin
Date:2014-06-04T00:14:45.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1371 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -17,10 +17,12 @@ You can get details of the usage and options of the '''ec''' command by executin
|
||||
|
||||
The usage and options display gives you information about which options are valid in a particular command context. Use this display along with the table below to choose the options that meet your needs.
|
||||
|
||||
Usage and options of the command line compiler vary from version to version in order to accommodate new and changed features. Here is an example of the command line help from version 6.7 of EiffelStudio:
|
||||
Usage and options of the command line compiler vary from version to version in order to accommodate new and changed features. Here is an example of the command line help from the latest version of EiffelStudio:
|
||||
|
||||
<code lang="text">
|
||||
Usage:
|
||||
ISE EiffelStudio version 14.05.9.5158 GPL Edition - win64
|
||||
|
||||
Usage:
|
||||
ec [-help | [-compat | -experiment] | -version | -full
|
||||
-batch | -clean | -verbose | -use_settings |
|
||||
-freeze | -finalize [-keep] | -precompile [-finalize [-keep]] | -c_compile |
|
||||
@@ -29,6 +31,7 @@ Usage and options of the command line compiler vary from version to version in o
|
||||
-flatshort [-filter filtername] [-all | -all_and_parents | class] |
|
||||
-flat [-filter filtername] [-all | -all_and_parents | class] |
|
||||
-short [-filter filtername] [-all | -all_and_parents | class] |
|
||||
-pretty input_filename [output_filename] |
|
||||
-filter filtername [-all | class] |
|
||||
-descendants [-filter filtername] class |
|
||||
-ancestors [-filter filtername] class |
|
||||
@@ -37,11 +40,12 @@ Usage and options of the command line compiler vary from version to version in o
|
||||
-implementers [-filter filtername] class feature |
|
||||
-callers [-filter filtername] [-show_all] [-assigners | -creators] class feature |
|
||||
-callees [-filter filtername] [-show_all] [-assignees | -creators] class feature |
|
||||
[-config config.ecf | -target target |
|
||||
(obsolete) -ace Ace | (obsolete) -project Project_file_name] |
|
||||
[[-config config.ecf] [-target target] |
|
||||
-ace Ace (obsolete) | -project Project_file_name (obsolete)] |
|
||||
[class_file.e [-library library_name]] |
|
||||
-stop | -no_library |
|
||||
-project_path Project_directory_path | -file File |
|
||||
-code-analysis [-cadefaults | -caloadprefs pref_file | -caclasses class ...] |
|
||||
-gc_stats]
|
||||
|
||||
Options:
|
||||
@@ -59,6 +63,7 @@ Options:
|
||||
-clients: show the clients of a class.
|
||||
-compat: enable pre-attached type compatibility.
|
||||
-config: specify the configuration (ECF) file.
|
||||
-debug: debug the system as a command loop.
|
||||
-descendants: show the descendants of a class.
|
||||
-dversions: show the descendant versions of a feature.
|
||||
-experiment: enable experimental functionalities.
|
||||
@@ -77,9 +82,9 @@ Options:
|
||||
-loop: run ec as a command loop.
|
||||
-melt: melt the system.
|
||||
-no_library: do not convert clusters into libraries.
|
||||
-options: debug the system as a command loop.
|
||||
-overwrite_old_project: overwrite any existing old project.
|
||||
-precompile: precompile the system.
|
||||
-pretty: show the pretty form of a class.
|
||||
-project: specify the project file to load (obsolete).
|
||||
-project_path: specify the compilation directory.
|
||||
-quick_melt: quick melt the system.
|
||||
@@ -176,6 +181,18 @@ To produce documentation for a view other than ''Text'', use its option in the c
|
||||
ec -flatshort -filter html-stylesheet -all -config application.ecf
|
||||
</code>
|
||||
|
||||
==Commands for Eiffel Inspector==
|
||||
To start the Eiffel Inspector you need to pass the '''-code-analysis''' command line options. If no other options are given, it will analyze the whole system. To specify some preferences or analyze part of a system, you will need to provide some more options described below:
|
||||
|
||||
<code lang="text">
|
||||
ec -config project.ecf -code-analysis [-cadefaults | -caloadprefs pref_file | -caclasses class ...]
|
||||
</code>
|
||||
|
||||
; -cadefaults : If provided, all preferences regarding the analysis will be reset to their default values (before the analysis is run). For example this leads to enabling all rules that are enabled by default, no matter whether they have been disabled before.
|
||||
|
||||
; -caloadprefs : Use preferences from ''pref_file'', an XML file containing the code analysis preferences. ''pref_file'' can be generated by exporting the current preferences in the GUI.
|
||||
|
||||
; -caclass : Followed by a list of class names (without file extension ''.e'') of the classes that shall be analyzed. If omitted then the whole system will be analyzed.
|
||||
|
||||
==Command options==
|
||||
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
[[Property:title|Major changes between ISE Eiffel 13.11 and ISE Eiffel 14.05]]
|
||||
[[Property:link_title|14.05]]
|
||||
[[Property:weight|8]]
|
||||
[[Property:uuid|a901f880-4f88-f889-4880-d3687b6939b1]]
|
||||
==What's new==
|
||||
* Syntax warnings are now reported for unsupported empty lists such as (), or [], or {}, as well as an empty export clause `export {NONE} end'.
|
||||
* Added ability to extract the file location of a class in interactive mode.
|
||||
|
||||
==Improvements==
|
||||
* Made workbench code more compact and faster by about 5 to 9% on average.
|
||||
* Improved memory tool to list all fields of an object.
|
||||
* Better command line usage that will report why the command line is incorrect instead of displaying the whole help.
|
||||
* Compiler is now more robust if some required routines/classes are not found as expected by the compiler. It will now report a Library_error error instead of failing.
|
||||
* Now the compiler reports all VWEQ warnings as before it was only doing it if you were comparing an expanded with a reference.
|
||||
|
||||
==Changes==
|
||||
* 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. In 14.05, we have disallowed $(expr) outside argument passing.
|
||||
* In workbench mode, if the melted file cannot be found, instead of exiting the application, the application will run as if it had never been melted and will instead print a warning in the console.
|
||||
|
||||
==Bug fixes==
|
||||
|
||||
===Language issues===
|
||||
|
||||
===Compiler issues===
|
||||
* 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.
|
||||
* test#anchor077 - Fixed a compiler crash when analyzing the following qualified anchored type '''like x.f''' where f is defined as '''f: like y.z.w'''.
|
||||
|
||||
* bug#16991 (test#anchor056) - Fixed a bug that might cause the compiler to report an unknown feature in a qualified anchored type with a formal generic qualifier constrained only by formal generic types.
|
||||
* test#anchor070 - Fixed a bug that might cause a compiler crash when nested qualified anchored types with a longer feature chain were involved in qualifiers of other qualified anchored types.
|
||||
* bug#16983 (test#anchor055), bug#17034 (test#anchor057) - Fixed a bug that caused a crash when compiling code with a creation of an object of a qualified anchored type with a formal generic.
|
||||
* bug#17239 (test#term198) - Fixed a bug that caused a crash when compiling the code that used an inline agent as an iteration expression.
|
||||
* bug#17233 (test#term196) - Supported iteration on an expression of a formal generic type.
|
||||
* 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.
|
||||
* test#config028, test#config029 and test#config038 - Fixed a crash when using a cluster/library with an invalid path.
|
||||
* Fixed a long standing bug where descriptions in external nodes were lost.
|
||||
* Fixed an issue with interactive mode where displaying all classes was actually not display classes which are part of a recursive cluster.
|
||||
* bug#18758 (test#anchor073, test#anchor074, and test#anchor059) - Fixed some improper handling of qualified anchors.
|
||||
* test#anchor050 - Fixed an issue on .NET where the compiler would not properly handle '''like {X}.f'''.
|
||||
* test#anchor065 - Fixed a compiler crash when processing '''like {G}.value'''.
|
||||
* Fixed a bug in the interactive mode of the compiler that was preventing the display of classes that belong to a folder of a cluster.
|
||||
* test#valid265 - Fixed a bogus compilation error when the type of a variant expression is of an anchored type when it should have accepted it.
|
||||
* bug#18824 (test#anchor075) - Fixed a compiler crash in .NET code generation where '''like {X}.dotnet_query''' would crash the compiler at degree 3.
|
||||
* text#catcall013 - Fixed an issue with catcall checking which would crash the compiler in the specific case where a type used as argument has some conversion routines.
|
||||
* Fixed bug#18855 where we used the wrong constant to display the command switch for the `-debug' option.
|
||||
|
||||
===SCOOP issues===
|
||||
|
||||
===Runtime/code generation issues===
|
||||
* test#exec341 - Fixed a crash at runtime when performing an assignment using an object-less call, e.g. '''{EXT}.fea := bar'''.
|
||||
* Fixed a regression that caused a C compilation error after removing a type from the system.
|
||||
* bug#18758 (test#anchor072) - Fixed crash which only affected .NET code generation of qualified anchor types.
|
||||
* test#anchor018, test#anchor050, test#anchor054, test#anchor056, test#anchor059, test#anchor063 and other tests - Fixed a code generation issue on .NET where some incorrect casts where generated causing an exception at runtime when the code is actually ok.
|
||||
* test#freez022 - Fixed a missing conversion at runtime when formal argument type is an anchor.
|
||||
* Fixed CECIL library creation to take into account the new memory_analyzer.o and offset.o modules of the runtime.
|
||||
* bug#18785 (test#ccomp089) - Fixed a code generation issue for Linux 32-bit for the generation of the value of NaN, +Infinity and -Infinity for floating numbers.
|
||||
|
||||
===Store/Retrieve issues===
|
||||
* Fixed an issue where retrieving a large amount of objects on a x86 platform, we would crash where restoring one of the store/retrieve stack using ''epop''.
|
||||
* bug#18835 - Fixed a potential overflow issue with store/retrieve when you have more than 2^31 objects.
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user