Update wikipage Major changes between ISE Eiffel 15.12 and ISE Eiffel 16.05. (Signed-off-by:alexk).

git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1573 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
eiffel-org
2016-06-01 08:34:42 +00:00
parent 118b1b4500
commit 72ba183004

View File

@@ -16,36 +16,36 @@ This is achieved as follows:
The change allows dropping explicit detachable marks in local declarations and simplifying the code that uses Result, e.g. The change allows dropping explicit detachable marks in local declarations and simplifying the code that uses Result, e.g.
<code> <code>
foo: X foo: X
local local
r: detachable X r: detachable X
do do
r := something r := something
if not attached r then if not attached r then
r := something_else_attached r := something_else_attached
end
Result := r
end end
Result := r
end
foo: X foo: X
do do
if attached something as r then if attached something as r then
Result := r Result := r
else else
Result := something_else_attached Result := something_else_attached
end
end end
end
</code> </code>
into into
<code> <code>
foo: X foo: X
do do
Result := something Result := something
if not attached Result then if not attached Result then
Result := something_else_attached Result := something_else_attached
end
end end
end
</code> </code>
The change does not allow previously void-unsafe code to be treated as void-safe, but may affect errors reported by the compiler, in particular: The change does not allow previously void-unsafe code to be treated as void-safe, but may affect errors reported by the compiler, in particular:
@@ -76,18 +76,17 @@ The change does not allow previously void-unsafe code to be treated as void-safe
* Fix invalid type checking error when using a manifest array in an across loop when some special crafted code appears before (see eweasel test#valid288) as in: * Fix invalid type checking error when using a manifest array in an across loop when some special crafted code appears before (see eweasel test#valid288) as in:
<code> <code>
failure failure
local local
i: INTEGER i: INTEGER
do do
bar (Void).make_from_array (Void) -- Comment out this line to fix the bug. bar (Void).make_from_array (Void) -- Comment out this line to fix the bug.
across
across <<1, 2, 3>> as c_i
<<1, 2, 3>> as c_i loop
loop i := c_i.item -- Error here.
i := c_i.item -- Error here.
end
end end
end
</code> </code>
* Fix .NET code generation to generate verifiable code when converting a manifest integer constant compatible with a NATURAL_64 (see eweasel test#dotnet118) * Fix .NET code generation to generate verifiable code when converting a manifest integer constant compatible with a NATURAL_64 (see eweasel test#dotnet118)