aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2016-08-05beam_block: Fix potentially unsafe optimization in move_allocates/1Björn Gustavsson
beam_block has an optimization that only is safe when it is applied immediately after code generation. That is pointed out in a comment: NOTE: Moving allocation instructions is only safe because it is done immediately after code generation so that we KNOW that if {x,X} is initialized, all x registers with lower numbers are also initialized. That assumption may not be true after other optimizations, such as the beam_utils:live_opt/1 optimization. The new beam_reorder pass added in OTP 19 runs before beam_block. Therefore, the optimization is potentially unsafe. The optimization is also unsafe if compilation is started from assembly code in a .S file. Rewrite the optimization to make it safe. See the newly added comment for details. ERL-202
2016-08-01Merge branch 'comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778' into maintBjörn-Egil Dahlberg
* comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778: fix gc_start\end bug
2016-08-01Merge branch 'raimo/SCTP-socket-stats/ERL-102/OTP-13773' into maintRaimo Niskanen
* raimo/SCTP-socket-stats/ERL-102/OTP-13773: Fix SCTP send stats in inet_drv Test inet:getstat/1 dead for SCTP send Fix test suite compilation warnings
2016-07-29fix gc_start\end bugTihon
2016-07-28Test inet:getstat/1 dead for SCTP sendRaimo Niskanen
2016-07-28Fix test suite compilation warningsRaimo Niskanen
2016-07-26Merge branch 'okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771' into maintBjörn-Egil Dahlberg
* okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771: Remove a duplicated pattern matching in erl_epmd.erl
2016-07-26Merge branch 'lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770' into ↵Björn-Egil Dahlberg
maint * lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770: Respect -proto_dist switch while connection to EPMD
2016-07-25Merge branch 'maint-18' into maintRaimo Niskanen
Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/vsn.mk lib/common_test/doc/src/notes.xml lib/common_test/vsn.mk lib/ssl/doc/src/notes.xml lib/ssl/src/ssl.appup.src lib/ssl/vsn.mk lib/stdlib/test/ets_SUITE.erl otp_versions.table
2016-07-23Prepare releaseErlang/OTP
2016-07-23Merge branch 'raimo/ssl/version-selection/maint-18/OTP-13753' into maint-18Erlang/OTP
* raimo/ssl/version-selection/maint-18/OTP-13753: Improve version selection
2016-07-23Merge branch 'peppe/ct_telnet_duplicated_lines/OTP-13730' into maint-18Erlang/OTP
* peppe/ct_telnet_duplicated_lines/OTP-13730: Fix error with duplicated printouts by ct_telnet:expect/3
2016-07-23Fix error with duplicated printouts by ct_telnet:expect/3Peter Andersson
OTP-13730
2016-07-21Merge branch ↵Björn-Egil Dahlberg
'imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765' into maint * imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765: Fix code_server crash when adding some code paths ERL-194
2016-07-21Improve version selectionRaimo Niskanen
Use the list of versions that the server allows and among those choose the highest version that is not higher than the client's version. Note that this chosen version might be lower than the client's version, but is used to improve interoperability. Patch suggested by Dimitry Borisov refering to RFC 5246 appendix E.1.
2016-07-19Merge branch ↵Raimo Niskanen
'raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746' into maint * raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746: Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187
2016-07-18Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187Raimo Niskanen
2016-07-17Respect -proto_dist switch while connection to EPMDPeter Lemenkov
Signed-off-by: Peter Lemenkov <[email protected]>
2016-07-15Merge branch 'maint-19' into maintBjörn-Egil Dahlberg
2016-07-14Fix code_server crash when adding some code paths ERL-194Ignacio Martínez
2016-07-14Prepare releaseErlang/OTP
2016-07-14Merge branch 'egil/compiler/fix-literal-binary-match/ERL-190/OTP-13738' into ↵Erlang/OTP
maint-19 * egil/compiler/fix-literal-binary-match/ERL-190/OTP-13738: Update primary bootstrap Revert "beam_dead: Improve optimization of literal binary matching" compiler: Test literal binary matching
2016-07-14Merge branch 'sverker/update_counter-deadlock/ERL-188/OTP-13731' into maint-19Erlang/OTP
* sverker/update_counter-deadlock/ERL-188/OTP-13731: erts: Add test ets_SUITE:update_counter_table_growth erts: Fix deadlock in ets:update_counter/4 erts: Optimize db_finalize_dbterm_hash
2016-07-12Revert "beam_dead: Improve optimization of literal binary matching"Björn-Egil Dahlberg
This reverts commit 105c5b0071056dc062797e58772e098d2a3a4627.
2016-07-12compiler: Test literal binary matchingBjörn-Egil Dahlberg
The following regression was introduced in 19.0: foo(bar, <<"x">>) -> 1; foo(_, <<"x">>) -> 2; foo(_, <<"y">>) -> 3; foo(_, _) -> fail. The call foo(bar,<<"y">>) would errorneous return 'fail' instead of 3. A testcase in match_SUITE has been added to verify this.
2016-07-11[reltool] Fix dependency bug for applications not in 'rel' specsSiri Hansen
For applications that are not included in a 'rel' spec in the reltool config, dependencies in the .app file are not followed. This is now corrected.
2016-07-11[reltool] Fix dependency bug for applications in 'rel' specsSiri Hansen
For applications that are included in a 'rel' spec in the reltool config, some dependency chains are not followed. E.g. * Application x has y as included application, and y in turn has z as included application. Then z is not included. * Application x has y in its 'applications' tag in the .app file, and y in turn has z as included application. Then z is not included. This is now corrected - all app-file dependencies are recusively followed for all applications that are included in a 'rel' spec in the reltool config.
2016-07-11[reltool] Add test for ERL-167Siri Hansen
For applications that are explicitly included in the reltool config, but that are not included in a 'rel' spec, dependencies in the .app file are not followed (only xref dependencies are taken care of).
2016-07-11Merge branch 'siri/cuddle-maint' into maintSiri Hansen
* siri/cuddle-maint: [sasl test] Skip tests on slow host [sasl test] Catch erlang:port_close/1 [ct test] Extent node startup timeouts in netconfc_remote_SUITE [ct test] Monitor netconf server during transaction [sasl test] Extend wait time when starting nodes [ct test] Skip system time related tests on TimeWarpingOS
2016-07-11erts: Add test ets_SUITE:update_counter_table_growthSverker Eriksson
2016-07-08erts: Add test ets_SUITE:update_counter_table_growthSverker Eriksson
2016-07-08Merge branch 'ingela/odbc/ctify' into maintIngela Anderton Andin
* ingela/odbc/ctify: odbc: Convert doc clauses form test_server to ct odbc: Replace test_server with ct eqvivalents odbc: Remove legacy config macros odbc: Remove legacy suite clauses from test suites
2016-07-08ssl: Correct handling of signature algorithm selectionIngela Anderton Andin
In TLS-1.2 the selection of the servers algorithms and the the possible selection of algorithms for the client certificate verify message have different requirements.
2016-07-08ssl: Simplify and refactor testsIngela Anderton Andin
Tests in ECC_SUITE did not always use the certs implied by the name. Variable naming also confused the intent. ssl_certificate_verify_SUITE did not clean up properly and tests could fail due to cache problems.
2016-07-08[sasl test] Skip tests on slow hostSiri Hansen
release_handler_SUITE:otp_9395_update_many_mods and otp_9395_rm_many_mods often fail on test host 'nain' due to a very slow sys call. These tests are now skipped on this host.
2016-07-08[sasl test] Catch erlang:port_close/1Siri Hansen
After starting a node with open_port({spawn_executable,...},...), the resulting port is closed both automatically and by the calling rh_test_lib:cmd/3. To avoid 'badarg' in the case when the automatic is faster, the call to erlang:port_close/1 is now catched.
2016-07-08[ct test] Extent node startup timeouts in netconfc_remote_SUITESiri Hansen
2016-07-08[ct test] Monitor netconf server during transactionSiri Hansen
Netconf client tests fail every now and then with 'table_trans_timeout' with no obvious reason. A monitor of the maint netconf server process is now added - in case this process crashes during the transaction.
2016-07-07wx: Prepare for using Erlang types and specsHans Bolinder
Create correct links to datatypes outside of the wx application. The added time for generating the doc/specs/specs_* files is unwelcome (they are currently not used).
2016-07-07syntax_tools: Improve typesHans Bolinder
2016-07-07syntax_tools: Improve seealso:s referring to typesHans Bolinder
Extract specs och types from source files, which ensures that seealso:s referring to, for example, erl_parse:abstract_form(), are assigned working links.
2016-07-07erl_docgen: Allow 'seealso' in 'name'Hans Bolinder
2016-07-07erl_docgen: Generate type links in callback module creating erlrefHans Bolinder
Create links to types, but generate no links to local types.
2016-07-07erl_docgen: Correct callback module for creating erlrefHans Bolinder
Show map fields correctly.
2016-07-07erl_docgen: Improve callback module for creating erlrefHans Bolinder
Create `Module:Type()' instead of `Type() (see module Module)'.
2016-07-07edoc: Correct typesHans Bolinder
2016-07-06syntax_tools: Make erl_tidy work on input file with tildeMark Bucciarelli
See also http://bugs.erlang.org/browse/ERL-151.
2016-07-06Merge branch 'margnus1/dialyzer/suppress_warns/ERL-159/PR-1121/OTP-13723' ↵Hans Bolinder
into maint * margnus1/dialyzer/suppress_warns/ERL-159/PR-1121/OTP-13723: dialyzer: Suppress warns on generated case stmts
2016-07-05Merge branch 'iilyak/stdlib/correct_ets_specs/PR-1113/OTP-13721' into maintHans Bolinder
* iilyak/stdlib/correct_ets_specs/PR-1113/OTP-13721: Fix return value spec for ets:match_object
2016-07-04dialyzer: Suppress warns on generated case stmtsMagnus Lång
Warnings about clauses that cannot match and are also compiler generated are suppressed unless none of the clauses return. This feature is useful for non-Erlang BEAM languages (such as Elixir) that compile to Erlang and expand certain language constructs into case statements. In that case, as long as the language construct can succeed, these warnings are undesired and appear spurious to users that do not check the Erlang code that their program expands into. Thanks to José Valim for the test (slightly modified).