aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
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-03stdlib: Add tests for Maps in erl_prettyprBjörn-Egil Dahlberg
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 maps in erl_prettyprAnthony Ramine
2014-02-01Support named funs in erl_prettyprAnthony Ramine
2014-02-01Handle map fields in their own function in erl_evalAnthony Ramine
Map fields (K := V, K => V) are not expressions and shouldn't be clauses of erl_eval:expr/5.
2014-01-31Complete support of maps in erl_syntaxAnthony Ramine
map_expr/1 map_expr/2 map_expr_argument/1 map_expr_fields/1 map_field_assoc/2 map_field_assoc_name/1 map_field_assoc_value/1 map_field_exact/2 map_field_exact_name/1 map_field_exact_value/1
2014-01-31compiler: Teach beam_disasm has_map_field instructionBjörn-Egil Dahlberg
2014-01-31compiler: Fold binary Map key patterns to literalsBjörn-Egil Dahlberg
2014-01-31compiler: Strengthen listings testsBjörn-Egil Dahlberg
2014-01-31compiler: Strengthen Maps testsBjörn-Egil Dahlberg
2014-01-31Shut off a dialyzer unmatched return warningKostis Sagonas
Dialyzer does not like list comprehensions for which the result is not assigned to some variable (maybe anonymous). In this particular case, the comprehension, containing only a filter but no generator, was used to save some lines, but IMO this type of code, while "cute", is not so easy to comprehend.
2014-01-31Add a spec for a function that does not returnKostis Sagonas
2014-01-31Allow making the system with --enable-native-libsKostis Sagonas
The HiPE compiler crashes when trying to compile these files because it does not currently support maps. So, add a -compile(no_native) attribute to these files to allow the system to be made even when configured with --enable-native-libs. This is a temporary fix and will be removed when the HiPE compiler gets proper support for maps.
2014-01-30Issue a warning when a named fun is constructed but not usedBjörn Gustavsson
2014-01-30Merge branch 'ia/inets/tests'OTP_17.0-rc1Björn-Egil Dahlberg
* ia/inets/tests: inets: Rewrite of test case to avoid timing issues in test code
2014-01-30Merge branch 'ia/ssl/openssl-1.0.1e'Björn-Egil Dahlberg
* ia/ssl/openssl-1.0.1e: ssl: Add workaround in test code for openssl s_client bug
2014-01-30Merge branch 'nox/syntax-tools-named-fun-fixes/OTP-11651'Björn-Egil Dahlberg
* nox/syntax-tools-named-fun-fixes/OTP-11651: Fix representation of named funs in syntax_tools
2014-01-30inets: Rewrite of test case to avoid timing issues in test codeIngela Anderton Andin
2014-01-30Merge branch 'peppe/common_test/telnet_logging_system'Peter Andersson
* peppe/common_test/telnet_logging_system: Add verification terms for the unix_telnet test case Add documentation about logging in the ct_telnet module Make temporary fix of problem that sometimes causes the ct_util server to die Fix remaining problems using raw telnet logging for parallel test cases Make it possible to use raw telnet logs in parallel test case groups Implement tests for logging traffic for multiple telnet connections Add and improve test cases Implement new telnet logging system OTP-11440
2014-01-29Fix representation of named funs in syntax_toolsAnthony Ramine
A named fun's name is a variable name, its type in syntax_tools is named_fun_expr.
2014-01-29ssl: Add workaround in test code for openssl s_client bugIngela Anderton Andin
2014-01-29Add verification terms for the unix_telnet test casePeter Andersson
2014-01-29Merge branch 'egil/maps/OTP-11616'Björn-Egil Dahlberg
* egil/maps/OTP-11616: (112 commits) compiler: Add core compile test for maps compiler: Fix core parse for Maps compiler: Fixup #map_pair{} spec erts: Strengthen map_SUITE tests erts: Update maps_fold test to respect maps:fold/3 stdlib: Make maps:fold/3 order-independent erts: Fixup enif_make_map_put on windows erts: Update preloaded erts_internal.beam hipe: Fixup update cerl pretty printer erts: Add map construction to driver API dialyzer: Add maps tests dialyzer: Remove dead code dialyzer: Reflect map_pair core changes in dialyzer hipe: Update cerl pretty printer compiler: Update inliner tests compiler: Squash #c_map_pair_*{} to #c_map_pair{} compiler: Squash #k_map_pair_*{} to #k_map_pair{} preloaded: Fixup export cmp_term in erts_internal erts: Change 'size' argument of enif_get_map_size from int* to size_t* erts: Fix compile error for halfword emulator ...
2014-01-29compiler: Add core compile test for mapsBjörn-Egil Dahlberg
2014-01-29compiler: Fix core parse for MapsBjörn-Egil Dahlberg
2014-01-29compiler: Fixup #map_pair{} specBjörn-Egil Dahlberg
2014-01-29stdlib: Make maps:fold/3 order-independentBjörn-Egil Dahlberg
This means replacing maps:foldl/3 and maps:foldr/3 with maps:fold/3.
2014-01-29hipe: Fixup update cerl pretty printerBjörn-Egil Dahlberg
2014-01-29dialyzer: Add maps testsBjörn-Egil Dahlberg
2014-01-29dialyzer: Remove dead codeBjörn-Egil Dahlberg
2014-01-29dialyzer: Reflect map_pair core changes in dialyzerBjörn-Egil Dahlberg
2014-01-29hipe: Update cerl pretty printerBjörn-Egil Dahlberg
2014-01-29compiler: Update inliner testsBjörn-Egil Dahlberg
2014-01-29compiler: Squash #c_map_pair_*{} to #c_map_pair{}Björn-Egil Dahlberg
Simplify compiler internals and parsing of core format.
2014-01-29compiler: Squash #k_map_pair_*{} to #k_map_pair{}Björn-Egil Dahlberg
Simplify compiler internals for kernel passes.
2014-01-29compiler: Fix term order compiler for mapsBjörn-Egil Dahlberg
2014-01-29Merge branch 'bjorn/fna-default/OTP-11612'Björn Gustavsson
* bjorn/fna-default/OTP-11612: Change the default file name encoding mode to +fnaw
2014-01-29Merge branch 'bjorn/asn1/erlang-types/OTP-11594'Björn Gustavsson
* bjorn/asn1/erlang-types/OTP-11594: Update documentation Fix open types Fix OCTET STRING Fix BIT STRING Add legacy_erlang_types asn1 test suite: Modernize testTimer_* and testTimer.erl testPrimStrings: Run test of fragmented strings for PER too
2014-01-29Add documentation about logging in the ct_telnet modulePeter Andersson
2014-01-28Make temporary fix of problem that sometimes causes the ct_util server to diePeter Andersson
2014-01-28Fix remaining problems using raw telnet logging for parallel test casesPeter Andersson
2014-01-28Make it possible to use raw telnet logs in parallel test case groupsPeter Andersson
2014-01-28stdlib: Strengthen Map module with guardsBjörn-Egil Dahlberg
This commit requires Map enabled bootstrap compiler.