aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-02-25Merge branch 'kostis/hipe-icode-cleanup' into maintHenrik Nord
* kostis/hipe-icode-cleanup: Fix dialyzer warning and some code refactoring OTP-13379
2016-02-25Merge branch 'maint'Henrik Nord
2016-02-25Merge branch 'legoscia/crl-check-without-dp' into maintHenrik Nord
* legoscia/crl-check-without-dp: Be suspicious of certificates without CRL DPs Refactor ssl_crl_SUITE: extract crl_verify_error/6 OTP-13378
2016-02-25Merge branch 'legoscia/critical-extension-verify-none' into maintHenrik Nord
* legoscia/critical-extension-verify-none: ssl: with verify_none, accept critical extensions OTP-13377
2016-02-25Merge branch 'maint'Henrik Nord
2016-02-25Merge branch 'benwilson512/better-maps-with' into maintHenrik Nord
* benwilson512/better-maps-with: Improved maps:with/2 and maps:without/2 algorithm OTP-13376
2016-02-25Produce warnings for binary patterns that will never matchBjörn Gustavsson
Binary matching can be confusing. For example: 1> <<-1>> = <<-1>>. ** exception error: no match of right hand side value <<"ÿ">> 2> When constructing binaries, the value will be masked to fit in the binary segment. But no such masking happens when matching binaries. One solution that we considered was to do the same masking when matching. We have rejected that solution for several reasons: * Masking in construction is highly controversial and by some people considered a bad design decision. * While masking of unsigned numbers can be understood, masking of signed numbers it not easy to understand. * Then there is the question of backward compatibility. Adding masking to matching would mean that clauses that did not match earlier would start to match. That means that code that has never been tested will be executed. Code that has not been tested will usually not work. Therefore, we have decided to warn for binary patterns that cannot possibly match. While we are it, we will also warn for the following example where size for a binary segment is invalid: bad_size(Bin) -> BadSize = bad_size, <<42:BadSize>> = Bin. That example would crash the HiPE compiler because the BEAM compiler would generate a bs_get_integer2 instruction with an invalid size field. We can avoid that crash if sys_core_fold not only warns for bad binary pattern, but also removes the clauses that will not match. Reported-by: http://bugs.erlang.org/browse/ERL-44 Reported-by: Kostis Sagonas
2016-02-25Merge branch 'maint'Hans Nilsson
2016-02-25Merge branch 'hans/eldap/unbind/OTP-13327' into maintHans Nilsson
Conflicts: lib/eldap/src/eldap.erl
2016-02-25Merge branch 'hans/eldap/referral/OTP-12272' into maintHans Nilsson
2016-02-25Eliminate useless helper functionsBjörn Gustavsson
andor_SUITE:check/2 function can be replaced with pattern matching.
2016-02-24Merge branch 'maint'Rickard Green
* maint: Do not wait for main lock when looking up process not running
2016-02-24Merge branch 'rickard/proc-not-running/OTP-13365' into maintRickard Green
* rickard/proc-not-running/OTP-13365: Do not wait for main lock when looking up process not running
2016-02-24Merge branch 'maint'Hans Bolinder
* maint: [erl_interface] Correct documentation
2016-02-24[erl_interface] Correct documentationHans Bolinder
Fix mistakes found by 'xmllint'.
2016-02-24Merge branch 'maint'Hans Bolinder
* maint: Update preloaded module typos Conflicts: erts/preloaded/ebin/prim_file.beam
2016-02-24Update preloaded moduleHans Bolinder
2016-02-23Do not wait for main lock when looking up process not runningRickard Green
2016-02-23ssl: Modernize utility functionIngela Anderton Andin
Use application:ensure_all_started/2 instead of hard coding dependencies
2016-02-23typosSverker Eriksson
2016-02-23kernel: Add heart options testBjörn-Egil Dahlberg
2016-02-23kernel: Add heart options documentationBjörn-Egil Dahlberg
2016-02-23Merge branch 'maint'Hans Nilsson
Conflicts: lib/ssh/test/ssh_upgrade_SUITE.erl
2016-02-23Merge branch 'hans/ssh/maint_cuddle_tests' into maintHans Nilsson
2016-02-23kernel: Add builtin scheduler check for heartBjörn-Egil Dahlberg
In addition, the heart API is extended with the following functions: * heart:set_options/1 * heart:get_options/0 If heart:set_options([scheduler]) is set, heart will check scheduler responsiveness before every heartbeat to the heart port.
2016-02-23kernel: Add heart validation callback documentationBjörn-Egil Dahlberg
2016-02-23Merge branch 'dgud/observer/perf-freq'Dan Gudmundsson
* dgud/observer/perf-freq: observer: Optimize drawing of graphs observer: Make it possible to change the graphs Xaxis and update freq
2016-02-23Merge branch 'maint'Henrik Nord
Conflicts: OTP_VERSION
2016-02-23Merge branch 'maint-18' into maintHenrik Nord
2016-02-23v3_core: Include line number annotations in binary patternsBjörn Gustavsson
We will need them when we start to produce warnings for patterns that can't match.
2016-02-23sys_core_fold: Introduce var_list/2Björn Gustavsson
As a preparation for checking binary patterns we will add var_list/2 that will work as pattern_list/2 but is guaranteed not to throw an exception. That way, we will only have to use try...catch for the few remaining calls to pattern_list/2.
2016-02-23sys_core_fold: Optimize clause/4Björn Gustavsson
Save work the *extremely* common case that the guard is a literal.
2016-02-23Use compile source info in debuggerJosé Valim
Prior to this commit, the debugger relied on a simple heuristic that traverses directory from the beam file to find a source file. The heuristic was maintained with this patch but, if it fails, it fallbacks to the source value in the module compile info. In order to illustrate how it works, one of the tests that could not find its source now passes successfully (showing the source lookup is more robust).
2016-02-22eldap: experimental impl of controls in LDAPMessageHans Nilsson
2016-02-22Merge branch 'maint'Rickard Green
* maint: Improve cmpxchg8b/cmpxchg16b inline asm Improve cmpxchg8b inline asm configure test
2016-02-22Merge branch 'rickard/dw-cmpxchg-clang/OTP-13336' into maintRickard Green
* rickard/dw-cmpxchg-clang/OTP-13336: Improve cmpxchg8b/cmpxchg16b inline asm
2016-02-22Merge branch 'rickard/gcc5-pic-cmpxchg8b/OTP-13326' into maintRickard Green
* rickard/gcc5-pic-cmpxchg8b/OTP-13326: Improve cmpxchg8b inline asm configure test
2016-02-22eldap: referral resultCodeHans Nilsson
2016-02-22Merge branch 'maint'Sverker Eriksson
2016-02-22Merge branch 'sverk/proc-lock-check-fix' into maintSverker Eriksson
* sverk/proc-lock-check-fix: erts: Fix lock checker for process locks
2016-02-22Merge branch 'maint'Hans Bolinder
* maint: Fix a few dialyzer warnings
2016-02-22Merge branch 'hb/add_dialyzer_suppressions/OTP-12862' into maintHans Bolinder
* hb/add_dialyzer_suppressions/OTP-12862: Fix a few dialyzer warnings
2016-02-22Fix ssl exampleMagnus Henoch
As recently discussed on the erlang-questions mailing list, this example fails to start the ssl application because ssl depends on asn1 nowadays. Let's future-proof this by using application:ensure_all_started/1.
2016-02-22Fix a few dialyzer warningsHans Bolinder
2016-02-22ssh: catch port_close in testHans Nilsson
2016-02-22ssh: remove calls to crypto:start|stopHans Nilsson
Conflicts: lib/ssh/test/ssh_upgrade_SUITE.erl
2016-02-22ssh: add timetrap to all test suitesHans Nilsson
2016-02-22ssh: remove some spurions test printoutsHans Nilsson
2016-02-22Merge branch 'maint'Ingela Anderton Andin
2016-02-22Merge branch 'ia/ssl/connection_information/OTP-13232/OTP-13343' into maintIngela Anderton Andin
* ia/ssl/connection_information/OTP-13232/OTP-13343: ssl: Newer cipher suites now presented correctly ssl: Include options form connect/listen/accept in connection_information/[1,2]