aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-11-16Merge branch 'ingela/master/correct-merge-conflict-resolution'Ingela Anderton Andin
* ingela/master/correct-merge-conflict-resolution: ssl: Resolve merge conflict resolution error
2017-11-16Merge branch 'maint'Hans Nilsson
2017-11-16ssl: Resolve merge conflict resolution errorIngela Anderton Andin
2017-11-16Merge branch 'maint' of github.com:erlang/otp into maintHans Nilsson
2017-11-16Merge branch 'maint'Hans Nilsson
2017-11-16Merge branch 'maint-18' into maintHans Nilsson
* maint-18: Updated OTP version Prepare release ssh: Unicode encoding fix ssh: testcases for space trailing Hello msg Remove unused test include file from test suites eldap: Repair Makefile ssh: Don't remove trailing WS in Hello msg Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/vsn.mk lib/compiler/doc/src/notes.xml lib/compiler/vsn.mk lib/crypto/test/blowfish_SUITE.erl lib/eldap/doc/src/notes.xml lib/eldap/vsn.mk lib/inets/test/httpd_load.erl lib/inets/test/httpd_mod.erl lib/inets/test/old_httpd_SUITE.erl lib/ssh/doc/src/notes.xml lib/ssh/vsn.mk lib/stdlib/test/zip_SUITE.erl otp_versions.table
2017-11-16Merge branch 'maint'Rickard Green
* maint: Fix triggering of node monitors
2017-11-16Merge branch 'rickard/node-mon-proc-exit-race/maint-20/OTP-14781' into maintRickard Green
* rickard/node-mon-proc-exit-race/maint-20/OTP-14781: Fix triggering of node monitors
2017-11-16Fix triggering of node monitorsRickard Green
2017-11-16Merge branch 'maint'Rickard Green
* maint: Fix triggering of node monitors Conflicts: erts/emulator/beam/dist.c
2017-11-16Merge branch 'rickard/node-mon-proc-exit-race/OTP-14781' into maintRickard Green
* rickard/node-mon-proc-exit-race/OTP-14781: Fix triggering of node monitors
2017-11-16Merge pull request #1626 from bjorng/bjorn/erts/fix-receive-opt/ERL-511Björn Gustavsson
Fix broken receive mark after an exception OTP-14782
2017-11-16Merge branch 'maint'Ingela Anderton Andin
Conflicts: lib/ssl/src/dtls_connection.erl lib/ssl/src/ssl_connection.erl lib/ssl/src/ssl_handshake.erl lib/ssl/src/tls_connection.erl
2017-11-16Merge branch 'ingela/ssl/code-enhance' into maintIngela Anderton Andin
* ingela/ssl/code-enhance: ssl: Align code of TLS/DTLS handshake handling ssl: Align code of TLS/DTLS record handling ssl: Align code of main modules implementing the gen_statem behaviour dtls: Add state spec
2017-11-16ssl: Align code of TLS/DTLS handshake handlingIngela Anderton Andin
2017-11-16ssl: Align code of TLS/DTLS record handlingIngela Anderton Andin
2017-11-16ssl: Align code of main modules implementing the gen_statem behaviourIngela Anderton Andin
2017-11-16dtls: Add state specIngela Anderton Andin
2017-11-15Fix triggering of node monitorsRickard Green
2017-11-15Merge branch 'maint'Hans Bolinder
* maint: edoc: The map type is denoted map()
2017-11-15Merge branch 'hasse/edoc/fix_map_type/OTP-14777' into maintHans Bolinder
* hasse/edoc/fix_map_type/OTP-14777: edoc: The map type is denoted map()
2017-11-15Merge pull request #1602 from sirihansen/siri/supervisor/store-children-in-mapSiri Hansen
Refactor supervisor, and store children in a map instead of a list OTP-14586
2017-11-15Merge PR-1605 from sverker/sverker/binary_to_term-used OTP-14780Sverker Eriksson
Add 'used' option for binary_to_term/2
2017-11-15Merge PR-1621 from margnus1/hipe-literal-tagSverker Eriksson
HiPE: Support for literal tag, tests and bugfixes
2017-11-15Updated OTP versionOTP-18.3.4.6Erlang/OTP
2017-11-15Prepare releaseErlang/OTP
2017-11-15Merge branch 'hans/ssh/dont_remove_trailing_ws_18/OTP-14763' into maint-18Erlang/OTP
* hans/ssh/dont_remove_trailing_ws_18/OTP-14763: ssh: Unicode encoding fix ssh: testcases for space trailing Hello msg ssh: Don't remove trailing WS in Hello msg
2017-11-15Merge branch 'hans/fix_build_env/OTP-14765' into maint-18Erlang/OTP
* hans/fix_build_env/OTP-14765: Remove unused test include file from test suites eldap: Repair Makefile
2017-11-15Merge branch 'rickard/timer-sid-bug/OTP-14548' into maint-18Erlang/OTP
* rickard/timer-sid-bug/OTP-14548: Fix scheduler id field in timers
2017-11-15Merge branch ↵Erlang/OTP
'john/compiler/fail-labels-in-blocks-otp-18/ERIERL-48/OTP-14522' into maint-18 * john/compiler/fail-labels-in-blocks-otp-18/ERIERL-48/OTP-14522: compiler: Fix live regs update on allocate in validator Take fail labels into account when determining liveness in block ops
2017-11-15Merge branch 'sverker/r16/binary_to_atom-utf8-crash/ERL-474/OTP-14590' into ↵Erlang/OTP
maint-18 * sverker/r16/binary_to_atom-utf8-crash/ERL-474/OTP-14590: erts: Fix crash in binary_to_atom/term for invalid utf8
2017-11-15Merge branch 'sverker/big-bxor-bug/ERL-450/OTP-14514' into maint-18Erlang/OTP
* sverker/big-bxor-bug/ERL-450/OTP-14514: erts: Fix bug in bxor of a big negative number
2017-11-15Merge branch 'sverker/prealloc-race-bug/OTP-14491' into maint-18Erlang/OTP
* sverker/prealloc-race-bug/OTP-14491: erts: Fix bug in quick alloc
2017-11-15ssh: Unicode encoding fixHans Nilsson
Conflicts: lib/ssh/src/ssh_connection_handler.erl
2017-11-15Merge branch 'maint'Sverker Eriksson
2017-11-15Merge branch 'sverker/test-cuddle' into maintSverker Eriksson
2017-11-14[supervisor] Add test of scaling on start/stop of many childrenSiri Hansen
2017-11-14edoc: The map type is denoted map()Hans Bolinder
The map type was erroneously displayed as "#{}", the empty map type.
2017-11-14Add ignore option to transform_table fun (#1614)Bernard Duggan
2017-11-14Merge branch 'maint'Hans Bolinder
* maint: dialyzer: Display error messages without call stack
2017-11-14Merge branch 'hasse/dialyzer/fix_crash_msg/OTP-14742' into maintHans Bolinder
* hasse/dialyzer/fix_crash_msg/OTP-14742: dialyzer: Display error messages without call stack
2017-11-14Fix broken receive optimizationBjörn Gustavsson
When a ref is created before performing a receive that will only receive message containing that ref, there is a compiler optimization to avoid scanning messages that can't possible contain the newly created ref. Magnus Lång pointed out that the implementation of the optimization is flawed. Exceptions or recursive calls could cause the receive operation to scan the receive queue from a position beyond the expected message (that is, the message containing the ref would never be matched out). See the receive_opt_exception/1 and receive_opt_recursion/1 test cases in receive_SUITE. It turns out that we can simplify the implementation of the optimization while fixing the bug (suggested by Magnus Lång). We actually don't need the c_p->msg.mark field. It is enough to have c_p->msg.saved_pos; if it is non-zero, it is a valid position in the message qeueue. All we need to do is to ensure that we clear c_p->msg.saved_pos when a receive is exited normally or abnormally. We can clear c_p->msg.saved_pos in JOIN_MESSAGE(), since it is called both when leaving a receive because a message matched and because there was a timeout and the 'after' clause was executed. In addition, we need to clear c_p->msg.saved_pos when an exception is caught. https://bugs.erlang.org/browse/ERL-511
2017-11-13Merge pull request #1624 from bjorng/bjorn/add-beam-internal-docBjörn Gustavsson
Add internal documentation for the beam_makeops script OTP-14626
2017-11-13Update primary bootstrapBjörn Gustavsson
2017-11-13Merge branch 'maint'Björn Gustavsson
* maint: Recognize 'deterministic' when given in a -compile() attribute Conflicts: lib/compiler/src/beam_asm.erl
2017-11-13Merge branch 'bjorn/compiler/fix-deterministic-attribute/ERL-498' into maintBjörn Gustavsson
* bjorn/compiler/fix-deterministic-attribute/ERL-498: Recognize 'deterministic' when given in a -compile() attribute OTP-14773
2017-11-13Merge branch 'maint'Ingela Anderton Andin
2017-11-13Merge branch 'ingela/ssl/doc-link-fix' into maintIngela Anderton Andin
* ingela/ssl/doc-link-fix: ssl: Fix broken link in doc
2017-11-13Document beam_makeopsBjörn Gustavsson
2017-11-13Refuse to load "literals" that can be confused with registersBjörn Gustavsson
The 's' operand overloads the tags for pids and ports to represent X and Y registers, respectively. At load time, refuse to load the module if the "literal" term is not a pid or port, as it would be interpreted as a register. This does not happen with normally compiled code, but it can happen if the compiler (or beam_asm) is abused like in the following example: make_bad() -> Pid = self(), Forms = [{attribute, 0, module, bad_s_operand}, {attribute, 0, export, [{test, 0}]}, {function, 0, test, 0, [{clause, 0, [], [], [{call,0,{atom,0,tuple_size},[{integer, 0, Pid}]}]}]}], {ok, Module, Bin} = compile:forms(Forms, [no_copt,no_postopt,report_errors]), code:load_binary(Module, "bad_s_operand.erl", Bin). With this commit applied, the following message will be printed when make_bad() is run: =ERROR REPORT==== 10-Nov-2017::14:47:59 === Loading of bad_s_operand.erl failed: badfile =ERROR REPORT==== 10-Nov-2017::14:47:59 === beam/beam_load.c(2396): Error loading function bad_s_operand:test/0: op bif1_body: bsd: the term '<0.60.0>' would be confused with a register