From c18b13d4c8aa31b145703bbbf228fb07d6b2a0a5 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Wed, 21 Jun 2017 10:53:19 +0200 Subject: Prepare release --- lib/compiler/doc/src/notes.xml | 174 +++++++++++++++++++++++++++++++++++++++++ lib/compiler/vsn.mk | 2 +- 2 files changed, 175 insertions(+), 1 deletion(-) (limited to 'lib/compiler') diff --git a/lib/compiler/doc/src/notes.xml b/lib/compiler/doc/src/notes.xml index 1dc0c808e7..f3d42a909b 100644 --- a/lib/compiler/doc/src/notes.xml +++ b/lib/compiler/doc/src/notes.xml @@ -32,6 +32,180 @@

This document describes the changes made to the Compiler application.

+
Compiler 7.1 + +
Fixed Bugs and Malfunctions + + +

For many releases, it has been legal to override a BIF + with a local function having the same name. However, + calling a local function with the same name as guard BIF + as filter in a list comprehension was not allowed.

+

+ Own Id: OTP-13690

+
+ +

compile:forms/2 would not return the module name as + documented when one of the options 'from_core', + 'from_asm', or 'from_beam' was given. Also, + the compiler would crash if one of those options was + combined with 'native'.

+

+ Own Id: OTP-14408 Aux Id: ERL-417

+
+
+
+ + +
Improvements and New Features + + +

+ Optimized test for tuples with an atom as first element.

+

+ Own Id: OTP-12148

+
+ +

+ Compilation of modules with huge literal binary strings + is now much faster.

+

+ Own Id: OTP-13794

+
+ +

Replaced usage of deprecated symbolic time + unit representations.

+

+ Own Id: OTP-13831 Aux Id: OTP-13735

+
+ +

The undocumented and unsupported module + sys_pre_expand has been removed. As a partial + replacement for the functionality, there is a new + function erl_internal:add_predefined_functions/1 + and erl_expand_records will now add a module + prefix to calls to BIFs and imported functions.

+

+ Own Id: OTP-13856

+
+ +

The internal compiler passes now start all generated + variables with "@" to avoid any conflicts with variables + in languages such as Elixir or LFE.

+

+ Own Id: OTP-13924

+
+ +

The function fmod/2 has been added to the + math module.

+

+ Own Id: OTP-14000

+
+ +

Code generation for complicated guards have been + improved.

+

+ Own Id: OTP-14042

+
+ +

+ The compiler has new warnings for repeated identical map + keys.

+

+ A map expression such as,

+

+ #{'a' => 1, 'b' => 2, 'a' => 3}.

+

+ will produce a warning for the repeated key 'a'.

+

+ Own Id: OTP-14058

+
+ +

By default, there will now be a warning when + export_all is used. The warning can be disabled + using nowarn_export_all.

+

+ Own Id: OTP-14071

+
+ +

+ Optimize maps pattern matching by only examining the + common keys in each clause first instead of all keys. + This will reduce the number of lookups of each key in + maps pattern matching.

+

+ Own Id: OTP-14072

+
+ +

There is a new 'deterministic' option to omit + 'source' and 'options' tuples in the BEAM + file.

+

+ Own Id: OTP-14087

+
+ +

+ Analyzing modules with binary construction with huge + strings is now much faster. The compiler also compiles + such modules slightly faster.

+

+ Own Id: OTP-14125 Aux Id: ERL-308

+
+ +

Atoms may now contain arbitrary Unicode + characters.

+

+ Own Id: OTP-14178

+
+ +

compile:file/2 now accepts the option + extra_chunks to include extra chunks in the BEAM + file.

+

+ Own Id: OTP-14221

+
+ +

The format of debug information that is stored in BEAM + files (when debug_info is used) has been changed. + The purpose of the change is to better support other + BEAM-based languages such as Elixir or LFE.

+

All tools included in OTP (dialyzer, debugger, cover, + and so on) will handle both the new format and the + previous format. Tools that retrieve the debug + information using beam_lib:chunk(Beam, + [abstract_code]) will continue to work with both the + new and old format. Tools that call + beam_lib:chunk(Beam, ["Abst"]) will not work with + the new format.

+

For more information, see the description of + debug_info in the documentation for + beam_lib and the description of the + {debug_info,{Backend,Data}} option in the + documentation for compile.

+

+ Own Id: OTP-14369 Aux Id: PR-1367

+
+ +

In a future release, erlang:get_stacktrace/0 + will probably only work when called from within a + 'try' expression (otherwise it will return + [].

+

To help prepare for that change, the compiler will now + by default warn if 'get_stacktrace/0' is used in a + way that will not work in the future. Note that the + warning will not be issued if 'get_stacktrace/0' + is used in a function that uses neither 'catch' + nor 'try' (because that could be a legal use if + the function is called from within a 'try'.

+

+ Own Id: OTP-14401

+
+
+
+ +
+
Compiler 7.0.4
Fixed Bugs and Malfunctions diff --git a/lib/compiler/vsn.mk b/lib/compiler/vsn.mk index 5c87304a01..463c264a5f 100644 --- a/lib/compiler/vsn.mk +++ b/lib/compiler/vsn.mk @@ -1 +1 @@ -COMPILER_VSN = 7.0.4 +COMPILER_VSN = 7.1 -- cgit v1.2.3