aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2014-03-21Adapt dictionary compilation to new default encodingAnders Svensson
The problem is that the change in default encoding to utf8 in 17.0, in commit 00e42967, changes the behaviour of erl_parse:abstract/1, which is used by the dictionary compiler to turn terms into abstract code. In particular, it transforms the orddict representation of a parsed dictionary to contruct the return value of a dictionary module's dict/0 function. This orddict contains various lists, one of which is a list of tuples of the form {Name, Code, [VendorId], [Avp]} where Name is an ASCII string and VendorId is a non-negative integer. Using erl_parse:abstract/2 instead allows a string encoding to be specified but regardless of what encoding is used, the result of transforming our tuple might not be what we really want, which is for Name to always be represented as a string form and [VendorId] to always be represented as a cons form: the [VendorId] will always end up as a string form if the integers are small enough. The only way around this is to transform the tuple bit by bit, but modifying the code to do this is quite a lot of work, for not much gain: it would be nice to produce more readable output but nothing stops working without it. This commit restores the pre-17.0 conversion by explicilty specifying latin1 as the string encoding to erl_parse:abstract/2. The utf8 encoding broke the compilation of some dictionares since unicode strings aren't expected when writing the generated code to file. Note that the latin1 encoding does reasonably well in practice, although it mangles the Ericsson Vendor Id list [193] into a "LATIN CAPITAL LETTER A WITH ACUTE". The utf8 encoding does worse, mangling the 3GPP Vendor Id 10415 into "DESERET CAPITAL LETTER CHEE". An ascii encoding would do better than latin1 but doesn't yet exist. (Encoding isn't really what the option is. It's a string predicate: if the predicate is true then represent as a string form, otherwise a cons form.)
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.
2014-01-28stdlib: Pretty print mapsBjörn-Egil Dahlberg
Pretty printing behaviour mimic records. This commit requires Map enabled bootstrap compiler.
2014-01-28stdlib: Remove bogus map() typeBjörn-Egil Dahlberg
2014-01-28erts,stdlib: Change map module name to mapsBjörn-Egil Dahlberg
Name conforms to EEP.
2014-01-28erts,stdlib: Teach matchspec compiler map guardsBjörn-Egil Dahlberg
2014-01-28stdlib: Fixup id_transform_SUITEBjörn-Egil Dahlberg
2014-01-28typer: Rename map() type to map_dict()Björn-Egil Dahlberg
The name conflicted with builtin type map().
2014-01-28edoc: Add test for Maps in EDocBjörn-Egil Dahlberg
2014-01-28edoc,syntax_tools: Teach Map understandingBjörn-Egil Dahlberg
2014-01-28dialyzer,hipe,stdlib: Add Maps understanding to DialyzerBjörn-Egil Dahlberg
2014-01-28Merge branch 'lukas/erts/sendfile_no_async_pool/OTP-11639'Lukas Larsson
* lukas/erts/sendfile_no_async_pool/OTP-11639: erts/kernel: sendfile no longer uses async threads
2014-01-28Merge branch 'ia/RoadRunner/tls-validate-options/OTP-11634'Ingela Anderton Andin
* ia/RoadRunner/tls-validate-options/OTP-11634: ssl: use is_boolean/1 guard in option validation
2014-01-28ssl: use is_boolean/1 guard in option validationAndreas Schultz
2014-01-28Change the default file name encoding mode to +fnawBjörn Gustavsson
2014-01-28Update documentationBjörn Gustavsson
2014-01-28Merge branch 'siri/appup_tests_17/OTP-11534'Siri Hansen
* siri/appup_tests_17/OTP-11534: Update sasl appup test to work for OTP release 17 Update stdlib appup test to work for OTP release 17 Update kernel appup test to work for OTP release 17
2014-01-28stdlib: Add Map moduleBjörn-Egil Dahlberg
The map type is set to term.
2014-01-28stdlib: Update erl_scan_SUITE for ':=' and '=>' tokensBjörn-Egil Dahlberg
2014-01-28stdlib: Deny variables as keys and disallow ':=' in map constructionBjörn-Egil Dahlberg
In the current iteration of Maps we should deny *any* variables in Map keys.
2014-01-28stdlib: Teach erl_eval Maps ':=' exact operatorBjörn-Egil Dahlberg
2014-01-28compiler: Rename map pattern to proper nameBjörn-Egil Dahlberg