aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2014-02-19compiler: Transform list of Args to exact literal typeBjörn-Egil Dahlberg
2014-02-19compiler: Test Maps aliasingBjörn-Egil Dahlberg
2014-02-19compiler: Use aliasing in map pair patternsBjörn-Egil Dahlberg
2014-02-19compiler: Check literal order in beam_validatorBjörn-Egil Dahlberg
2014-02-13compiler: Change map instructions for fetching valuesBjörn-Egil Dahlberg
* Combine multiple get values with one instruction * Combine multiple check keys with one instruction
2014-02-10Merge branch 'egil/compiler/maps-fix-sys_core_fold'Björn-Egil Dahlberg
* egil/compiler/maps-fix-sys_core_fold: compiler: Fix sys_core_fold let optimization compiler: Add debug listing after sys_core_fold
2014-02-10Merge branch 'egil/compiler/maps-fix-codegen'Björn-Egil Dahlberg
* egil/compiler/maps-fix-codegen: compiler: Fix codegen multiple updates for Maps erts,compiler: Correct and amend tests for Maps
2014-02-10Merge branch 'ia/public_key/specs'Ingela Anderton Andin
* ia/public_key/specs: public_key: Export some dialyzer types
2014-02-07compiler: Fix sys_core_fold let optimizationBjörn-Egil Dahlberg
Map variable was not covered and faulty optimization could occur. Ex. t() -> M0 = id(#{ "a" => 1 }), #{ "a" := _ } = M0, M0#{ "a" := b }. M0 was lost in let expression optimization.
2014-02-07compiler: Add debug listing after sys_core_foldBjörn-Egil Dahlberg
2014-02-07compiler: Fix codegen multiple updates for MapsBjörn-Egil Dahlberg
This fixes an error on multiple updates optimization for map pairs. The error was introduced with moving to term order in Maps. This also fixes an error where register life time was lost for values and could result in erroneuos values being emitted in for map pairs. Simplified v3_codegen by moving multiple update optimizations to v3_kernel.
2014-02-07erts,compiler: Correct and amend tests for MapsBjörn-Egil Dahlberg
Faulty test for maps update
2014-02-07Merge branch 'nox/tools/cover-record-update'Björn Gustavsson
* nox/tools/cover-record-update: Properly munge record updates in cover Don't munge record and field names in cover
2014-02-07Merge branch 'nox/eep37/OTP-11537'Björn Gustavsson
* nox/eep37/OTP-11537: Support named funs in erl_prettypr
2014-02-07Merge branch 'vladdu/debugger/fixes'Björn Gustavsson
* vladdu/debugger/fixes: remove warning for variable exported from case remove useless match remove unused parameter
2014-02-07Merge branch 'hsv/using_lists_droplast'Henrik Nord
* hsv/using_lists_droplast: lib/mnesia/test/ - Replace reverse(tl(reverse(L))) with lists:droplast/1 lib/ssh - Replace reverse(tl(reverse(L))) with lists:droplast/1 lib/wx - Replace reverse(tl(reverse(L))) with lists:droplast/1 Use lists:droplast/1 in orber/orber_interceptors.erl Import and use lists:droplast/1 in v3_core/v3_kernel OTP-11678 OTP-11677
2014-02-07Merge branch 'hsv/add_droplast_to_lists'Henrik Nord
* hsv/add_droplast_to_lists: Added documentation of lists:droplast/1 Added tests for lists:droplast/1 to stdlib/lists_SUITE stdlib/lists: Add function droplast/1 This functions drops the last element of a non-empty list.
2014-02-07Merge branch 'egil/erts/fix-maps-beam_load'Björn-Egil Dahlberg
* egil/erts/fix-maps-beam_load: compiler: Update map_SUITE with error case test erts: Maps must fail on exact updates of empty Maps erts: Fix Maps for beam_load
2014-02-07compiler: Update map_SUITE with error case testBjörn-Egil Dahlberg
M#{ key := V } should fail when M is not a Map
2014-02-07Merge branch 'kostis/dialyzer-r17c0-fixes'Henrik Nord
* kostis/dialyzer-r17c0-fixes: Shut off a dialyzer unmatched return warning Add a spec for a function that does not return
2014-02-07Merge branch 'ia/ssl/unicode-adapt'Ingela Anderton Andin
* ia/ssl/unicode-adapt: ssl: Unicode adaptions
2014-02-07Merge branch 'hb/doc/release_name'Hans Bolinder
* hb/doc/release_name: Make the references to various Erlang/OTP releases verbose
2014-02-06Make the references to various Erlang/OTP releases verboseHans Bolinder
2014-02-06public_key: Export some dialyzer typesIngela Anderton Andin
Move dilayzer types from include file to erl file and use -export_type
2014-02-06Add app-test and correct dialyzer.app.srcHans Bolinder
2014-02-06Merge branch 'nox/debugger/maps-support/OTP-11673'Björn-Egil Dahlberg
* nox/debugger/maps-support/OTP-11673: debugger: Fix release_tests Support maps in the debugger
2014-02-06debugger: Fix release_testsBjörn-Egil Dahlberg
2014-02-06Merge branch 'bjorn/compiler/applying-binary-crash/OTP-11672'Björn Gustavsson
* bjorn/compiler/applying-binary-crash/OTP-11672: beam_bsm: Eliminate emulator crash when a binary is called beam_validator: Validate the "fun" argument for a call_fun/1 instruction
2014-02-06Merge branch 'bjorn/compiler/optimizations/OTP-11584'Björn Gustavsson
* bjorn/compiler/optimizations/OTP-11584: sys_core_fold: Prevent case expressions from being evaluated twice sys_core_fold_SUITE: For cleanliness, move id/1 to the end
2014-02-06ssl: Unicode adaptionsIngela Anderton Andin
2014-02-05remove warning for variable exported from caseVlad Dumitrescu
2014-02-05remove useless matchVlad Dumitrescu
2014-02-05remove unused parameterVlad Dumitrescu
2014-02-05beam_bsm: Eliminate emulator crash when a binary is calledBjörn Gustavsson
We must not do the delayed binary creation optimization if the code attempts to call the matched out binary. Calling a matchstate will crash the run-time system. Reported-by: Loïc Hoguin
2014-02-05beam_validator: Validate the "fun" argument for a call_fun/1 instructionBjörn Gustavsson
The fun argument for a call_fun/1 instruction was not validated.
2014-02-05ssh: fix 'known_hosts' bug in ssh_fileHans Nilsson
2014-02-05Fix that result on stderr sent back to ssh:exec had length info presentHans Nilsson
2014-02-05Merge branch 'peppe/common_test/ts_mods'Peter Andersson
* peppe/common_test/ts_mods: Add more Common Test start arguments to the ts run interface
2014-02-05Merge branch 'bjorn/eep37/OTP-11537'Björn Gustavsson
* bjorn/eep37/OTP-11537: Issue a warning when a named fun is constructed but not used
2014-02-04Add more Common Test start arguments to the ts run interfacePeter Andersson
2014-02-04Merge branch 'nox/syntax_tools/maps-support/OTP-11663'Björn-Egil Dahlberg
* nox/syntax_tools/maps-support/OTP-11663: Support maps in erl_prettypr Complete support of maps in erl_syntax
2014-02-04sys_core_fold: Prevent case expressions from being evaluated twiceBjörn Gustavsson
In e12b7d5331c58b41db06cadfa4af75b78b62a2b1, a bug was introduced that would cause case expressions to be evaluated more than once if there were aliases in the pattern. Example: X = Y = io:put_chars("some chars"), {X,Y} That would be rewritten to code similar to (but in Core Erlang): X = io:put_chars("some chars"), X = io:put_chars("some chars"), {X,Y} Make sure that we only evalute the expression once by doing a transformation similar to (but in Core Erlang): NewVar = io:put_chars("some chars"), X = NewVar, Y = NewVar, {X,Y} Reported-by: José Valim Reported-by: Anthony Ramine
2014-02-04sys_core_fold_SUITE: For cleanliness, move id/1 to the endBjörn Gustavsson
2014-02-04Support maps in the debuggerAnthony Ramine
A test is commented-out in map_SUITE:t_update_exact/1, waiting for a fixed maps:update/3 function with correct integer/float semantics.
2014-02-03lib/mnesia/test/ - Replace reverse(tl(reverse(L))) with lists:droplast/1Hans Svensson
2014-02-03Merge branch 'egil/compiler/strengthen-tests'Björn-Egil Dahlberg
* egil/compiler/strengthen-tests: compiler: Teach beam_disasm has_map_field instruction compiler: Fold binary Map key patterns to literals compiler: Strengthen listings tests compiler: Strengthen Maps tests
2014-02-01Properly munge record updates in coverAnthony Ramine
Trees {record,Line,Arg,Name,Fields} were not munged.
2014-02-01Don't munge record and field names in coverAnthony Ramine
They are bare atoms, atoms or variables in the abstract format, there is no need to pass them through munge_expr/2.
2014-02-01Support maps in erl_prettyprAnthony Ramine
2014-02-01Support named funs in erl_prettyprAnthony Ramine