aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2019-05-29Merge branch 'maint'Lukas Larsson
2019-05-29Merge branch 'kuroneer/multiple-mode-flags/OTP-15852' into maintLukas Larsson
* kuroneer/multiple-mode-flags/OTP-15852: Update preloaded modules Add comment to doc regarding multiple -mode flags Extra -mode flags are ignored with a warning
2019-05-29Merge branch 'maint'Björn Gustavsson
* maint: Eliminate crash in the beam_ssa_dead compiler pass
2019-05-29Merge pull request #2263 from ↵Björn Gustavsson
bjorng/bjorn/compiler/fix-beam_ssa_dead-crash/ERL-956/OTP-15848 Eliminate crash in the beam_ssa_dead compiler pass
2019-05-28Merge pull request #2189 from ↵John Högberg
jhogberg/john/erts/seq-trace-on-spawn/OTP-15232/ERL-700 Propagate seq_trace tokens to spawned processes
2019-05-28Merge branch 'maint'Ingela Anderton Andin
2019-05-28Merge branch 'ingela/ssl/alert-strings/OTP-15844' into maintIngela Anderton Andin
2019-05-28Export named_curve/0juhlig
The types named_curve/0 consist of many options and may also change with time. Since they are not exported, users must either repeat and maintain their specs, or use a general type like any() if they want to refer to them.
2019-05-28ssl: Export type that user may want to useIngela Anderton Andin
2019-05-28Merge branch 'maint'John Högberg
2019-05-28Merge branch 'john/compiler/list_append_type/OTP-15841' into maintJohn Högberg
2019-05-28ssl: Returned "alert error string" should be same as logged alert stringIngela Anderton Andin
2019-05-28Eliminate crash in the beam_ssa_dead compiler passBjörn Gustavsson
The compiler could crash in the beam_ssa_dead pass while compiling complex nested `case` expressions. See the added test case for an example and explanation. https://bugs.erlang.org/browse/ERL-956
2019-05-27Merge branch 'maint'Björn Gustavsson
* maint: Fix loading of Core Erlang code for extracting a map element Fix unsafe optimizations where guard tests could be removed
2019-05-27Merge branch 'bjorn/compiler/fix-unloadable-code-patch/ERL-955/OTP-15846' ↵Björn Gustavsson
into maint * bjorn/compiler/fix-unloadable-code-patch/ERL-955/OTP-15846: Fix loading of Core Erlang code for extracting a map element
2019-05-27Merge branch 'bjorn/compiler/fix-beam_ssa_dead-patch/OTP-15845' into maintBjörn Gustavsson
* bjorn/compiler/fix-beam_ssa_dead-patch/OTP-15845: Fix unsafe optimizations where guard tests could be removed
2019-05-27Merge branch 'john/misc-fixes-and-additions'John Högberg
* john/misc-fixes-and-additions: beam_validator: Fail when trying to set the type of a dead value beam_validator: Fix bad comment formatting/wording erts: Assert that GC should not be disabled twice
2019-05-27Merge branch 'maint'Björn Gustavsson
* maint: Fix compiler crash in beam_except
2019-05-27Merge branch 'bjorn/compiler/fix-beam_except/ERL-954/OTP-15839' into maintBjörn Gustavsson
* bjorn/compiler/fix-beam_except/ERL-954/OTP-15839: Fix compiler crash in beam_except
2019-05-27Fix compiler crash in beam_exceptBjörn Gustavsson
The compiler would crash in `beam_except` while compiling this function: bar(Req) -> ok = case Req of "POST" -> {error, <<"BAD METHOD ", Req/binary>>, Req}; _ -> ok end. https://bugs.erlang.org/browse/ERL-954
2019-05-27Merge branch 'maint'Ingela Anderton Andin
2019-05-27Merge branch 'ingela/public_key/ERL-915/OTP-15843' into maintIngela Anderton Andin
* ingela/public_key/ERL-915/OTP-15843: public_key: Update dialyzer specs to better conform to accepted input
2019-05-27Merge pull request #2248 from bjorng/bjorn/compiler/move-core-opts-to-ssaBjörn Gustavsson
Move type-based optimizations from Core Erlang passes to SSA passes
2019-05-27Merge branch 'maint'Björn Gustavsson
* maint: Fix unsafe negative type inference
2019-05-27Merge branch 'bjorn/compiler/fix-unsafe-type-inference/OTP-15838' into maintBjörn Gustavsson
* bjorn/compiler/fix-unsafe-type-inference/OTP-15838: Fix unsafe negative type inference
2019-05-27compiler: Fix broken type for erlang:'++'/2John Högberg
2019-05-27Fix loading of Core Erlang code for extracting a map elementBjörn Gustavsson
The following Core Erlang code could not be loaded: 'f'/1 = fun (_1) -> case <_1> of <~{'foo':='foo'}~> when 'true' -> _1 end Loading would fail with the following message: beam/beam_load.c(2314): Error loading function example:f/1: op i_get_map_element_hash p x a u x: no specific operation found https://bugs.erlang.org/browse/ERL-955
2019-05-25Fix unsafe optimizations where guard tests could be removedBjörn Gustavsson
A repeated test could be optimized away. Example: bar(A) -> if is_bitstring(A) -> if is_binary(A) -> binary; true -> bitstring end; true -> other end. In the example, the `is_binary/1` test would be optimized away, basically turning the example into: bar(A) -> if is_bitstring(A) -> bitstring; true -> other end. Thanks user Marcus Kruse in the Elixir forum for noticing this bug.
2019-05-24Merge branch 'maint'Péter Dimitrov
* maint: ssl: Improve standards compliance document ssl: Update standards compliance ssl: Add openssl interop test for TLS 1.3 client ssl: Improve interoperability with openssl ssl: Implement hello_retry_request (client) ssl: Generate only one key_share entry (client) ssl: Remove calls to tls_connection:next_record/1 ssl: Implement peer verification ssl: Validate selected cipher suite and key_share ssl: Add tests for TLS 1.3 client ssl: Implement basic TLS 1.3 client
2019-05-24Merge pull request #2234 from peterdmv/peterdmv/ssl/tls13-clientPéter Dimitrov
Add basic TLS 1.3 client
2019-05-24Fix unsafe negative type inferenceBjörn Gustavsson
The type optimizer pass (`beam_ssa_type`) could make unsafe negative inferences. That is, incorrectly infer that a variable could *not* have a particular type. This bug was found when adding another optimization. It is not clear how write a failing test case without that added optimization.
2019-05-24ssl: Improve standards compliance documentPéter Dimitrov
OTP-15431
2019-05-23ssl: Update standards compliancePéter Dimitrov
2019-05-23ssl: Add openssl interop test for TLS 1.3 clientPéter Dimitrov
2019-05-23ssl: Improve interoperability with opensslPéter Dimitrov
Handle the NewSessionTicket post-handshake message that is sent by openssl s_server after a successful handshake.
2019-05-23Simplify sys_core_fold by removing obsoleted optimizationsBjörn Gustavsson
Simplify sys_core_fold by removing optimizations by removing the optimizations that have been obsoleted by the preceding commits.
2019-05-23ETS testing: Improve visualization of ETS throughput benchmark resultsKjell Winblad
This commit makes it possible to see relative differences in the HTML page that visualizes results from the ETS throughput benchmark that is included in the test suite ets_SUITE. This change will make it easier to compare different ETS table configurations and implementations.
2019-05-23Optimize is_function/{1,2} callsBjörn Gustavsson
Remove is_function/1,2 tests if that are known to never fail.
2019-05-23Optimize expression comparing a boolean to 'false'Björn Gustavsson
2019-05-23Implement '==' optimization in beam_ssa_typeBjörn Gustavsson
`=:=` is faster than `==`, so when they would return the same result, we want to replace `==` with `=:=`. There is currently such an optimization in sys_core_fold, but the optimimization will be more effective if done in beam_ssa_type because beam_ssa_type has better type information.
2019-05-23Merge pull request #2212 from andrenth/file-open-directoriesJohn Högberg
file: allow open/2 to work on directories OTP-15835
2019-05-23Merge branch 'maint'Björn Gustavsson
* maint: Eliminate compiler crash when compiling complex receive statements
2019-05-23Merge branch 'bjorn/compiler/fix-receive-patch/ERL-950/OTP-15832' into maintBjörn Gustavsson
* bjorn/compiler/fix-receive-patch/ERL-950/OTP-15832: Eliminate compiler crash when compiling complex receive statements
2019-05-22Merge branch 'maint'Micael Karlberg
2019-05-22Merge branch 'bmk/snmp/20190522/random_to_rand/OTP-15331' into maintMicael Karlberg
2019-05-22Merge branch 'maint'Micael Karlberg
2019-05-22Merge branch 'bmk/snmp/20190522/get_stacktrace/OTP-15332' into maintMicael Karlberg
2019-05-22Merge branch 'maint'Sverker Eriksson
2019-05-22Merge branch 'sverker/stdlib/binary-referenced_byte_size-doc' into maintSverker Eriksson
PR-2245 ERL-914 * sverker/stdlib/binary-referenced_byte_size-doc: stdlib: Improve example for binary:referenced_byte_size/1
2019-05-22[snmp] Replaced usage of random with randMicael Karlberg
Use of the deprecated module random has been replaced by the module rand. OTP-15331