Age | Commit message (Collapse) | Author |
|
The types array(), dict(), digraph(), gb_set(), gb_tree(), queue(),
set(), and tid() have been deprecated. They will be removed in OTP 18.0.
Instead the types array:array(), dict:dict(), digraph:graph(),
gb_set:set(), gb_tree:tree(), queue:queue(), sets:set(), and ets:tid()
can be used. (Note: it has always been necessary to use ets:tid().)
It is allowed in OTP 17.0 to locally re-define the types array(), dict(),
and so on.
New types array:array/1, dict:dict/2, gb_sets:set/1, gb_trees:tree/2,
queue:queue/1, and sets:set/1 have been added.
|
|
Handle immediate opaque types as aliases:
A declaration of dict/0
-opaque dict() :: dict(_, _).
-opaque dict(Key, Value) :: ...
is handled as an alias, that is, when using dict() it is immediately
replaced by dict(_, _).
This is a means to avoid having to handle equivalent opaque types
later. To be changed if it doesn't work well.
|
|
This should fix a problem with variables in parameterized types.
In particular it concerns parameterized opaque types and records.
|
|
|
|
* nox/maps-erl_syntax-fix-docs:
Mention map trees in erl_syntax:type/1 documentation
|
|
* egil/compiler/maps-get_map_elements:
compiler: Strengthen Maps compile tests
compiler: Remove dead warning
erts: Fix erts_debug:disassemble/1
compiler: Transform list of Args to exact literal type
compiler: Test Maps aliasing
compiler: Use aliasing in map pair patterns
compiler: Check literal order in beam_validator
erts: Introduce new instructions for combined key fetches
compiler: Change map instructions for fetching values
|
|
* rickard/doc-build/OTP-11713:
Build documentation with bootstrap system
|
|
* rickard/otp_version/OTP-11615:
Misc adjustments of OTP version
|
|
* dgud/mnesia/add-sync-log/OTP-11729:
mnesia: cleanup some dialyzer unmatched return warnings
mnesia: Shorten testcase names
mnesia: Improve mnesia coredump info
mnesia: Add explicit sync_log command
|
|
* hb/kernel/spec_bug_fix/OTP-11730:
Correct the contract of inet:ntoa/1
|
|
* hb/stdlib/epp_bug_fix/OTP-11728:
Fix a bug in epp concerning circular macro definitions
|
|
* siri/restart_app-type/OTP-11716:
[sasl] Use restart type from .rel when restarting apps during upgrade
|
|
* siri/appup_tests_17/OTP-11534:
Update sasl/test/test_lib.hrl with recent versions of kernel and stdlib
Update appups and appup tests for kernel, stdlib and sasl
|
|
|
|
Thanks to Max Treskin.
|
|
|
|
epp could loop when encountering a circular macro definition in an
included file.
Thanks to Maruthavanan Subbarayan for reporting the bug, and to
Richard Carlsson for providing a bug fix.
|
|
* bjorn/cuddle-with-tests:
With --enable-native-libs, skip eprof_SUITE:basic_option/1
Speed up bs_construct_SUITE:dynamic/1
|
|
eprof does not work on native-compiled code. Since
eprof_SUITE:basic_option/1 does profiling on the lists modules,
the test case will fail if --enable-native-libs is used.
|
|
The original test comes from the emulator test suite for testing
binary syntax in the run-time system.
Running interpreted it can be quite slow, especially when the system
has been compiled with the configure option --enable-native-libs
(probably because of very many context switches between native code
and BEAM code).
Speed up the test by scaling down the size of binaries from 128
bits to 64 bits. That should speed up the test roughly four times.
By running the little and big endian tests in parallel we will
cut that time in half. Thus all in all the test will run roughly
8 times faster.
|
|
|
|
For windows tests (limited path lenghts)
|
|
Add stacktrace of mnesia processes.
|
|
For performance reasons the file data is not synced to disk in mnesia,
data loss can happen between each dump.
mnesia:dump_log() can be used explicitly to ensure data is written to disk.
But that can take a long time, so mnesia:sync_log() which just
sync the log have been added.
|
|
* bjorn/asn1/cleanup/OTP-11727:
asn1ct_check: Use a return value to silence a dialyzer warning
asn1ct_check: Remove useless call to check_integer/3
asn1ct_check: Correct error handling for illegal OCTET STRING values
asn1ct: Silence dialyzer warnings for unmatched returns
asn1ct_table: Remove unused flexibility in table creation
asn1ct_table: Silence a dialyzer warning for unmatched return
asn1ct_gen: Silence dialyzer warnings for unmatched returns
asn1ct_value: Silence a dialyzer warning for unmatched return
asn1ct_tok: Check return value from file:close/1
|
|
* dgud/kernel/application-deadlock/OTP-11171:
kernel: Fix an application terminate deadlock possibility
|
|
* dgud/runtime_tools/scheduler_wall_time_flags/OTP-11693:
runtime_tools: Do not turn off scheduler_wall_time
|
|
* fenollp/shell-expand-0arity-completely:
Correct parenthesis expansion
Clean up edlin_expand_SUITE.erl to facilitate maintainance
|
|
* lukas/tools/fix_maps_in_emacs_mode/OTP-11616:
tools: Update emacs mode with map highlights
|
|
OTP-11726
* sverk/ets-all-race:
erts: Fix faulty asserts in erts_sys_aligned_alloc/free
erts: Fix harmless (?) typo in beam_load.c
erts: Fix race bug in ets:all/0
|
|
causing recently created/deleted tables to not be included/excluded.
|
|
* sverk/test_server/openbsd-dynlink:
erts: Skip driver_SUITE:thr_free_drv for VM without threads
erts: Fix driver_SUITE:otp_9302 for VM without threads
test_server: Fix dynlib link command for openbsd
|
|
OTP-11725
* sverk/crypto/nomem-abort:
crypto: Abort VM if out of memory
|
|
OTP-11722
OTP-11724
* sverk/crypto/hmac-context-reuse-bug:
crypto: Fix bug when using old hmac context
erts: Fix NIF bug when load/upgrade fails after enif_open_resource_type
Conflicts:
erts/emulator/test/nif_SUITE.erl
|
|
|
|
Could happen if get_child was called during terminate.
io (since it is a group_leader) also causes problems after
get_child was called.
Split up and do it async.
|
|
|
|
|
|
|
|
Enables build of documentation in source trees that has been cross built
|
|
|
|
* anders/diameter/sctp/OTP-11661:
Use inet:{peer,sock}names/1 in diameter_sctp
|
|
OTP-10229 (commit c4592b69) added these function to give access to all
addresses on a multihomed endpoint, their singular siblings not
returning anything useful in this case.
This fixes {accept, Match} config, which matches peer addresses against
configured addresses or regexps to decide whether or not a newly
established association should be retained. The functionality was added
in OTP-10893 (commit 9bbf27eb) but predated OTP-10229 by a few months.
It also fixes the addresses shown for SCTP associations in
diameter:service_info/2 output.
|
|
* nox/compiler/v3_core-comprehensions-cleanup:
Simplify comprehension compilation in v3_core
OTP-11720
|
|
Earlier the 'restart_application' upgrade instruction always cause the
application to be restarted as permanent. This could cause the system
to end up in an unexpected state after an upgrade. This is now
corrected.
|
|
|
|
Given that map comprehensions and generators and maybe && generators will be added
to the language in the future, v3_core:lc_tq and v3_core:bc_tq could use a rewrite
to avoid a complexity explosion, where there are as many related clauses as the
product of the number of types of generators and the number of types of
comprehensions.
The new code abstract over all generators at the same time, there is only one clause
for generators per type of comprehension, and all the filter code has been put
in a common function filter_tq.
It should also be noted that generator inputs are now compiled before the rest
of the qualifiers, reversing names of nested comprehensions.
|
|
* bjorn/lc-warnings/OTP-11626:
dialyzer: Silence useless warnings about list comprehensions
|
|
Commit dfb4ec804a099b539c91e5643090d8183885e71c attempted to add
a closing parenthesis to the expansion of a funtion of zero arity
if there were no other functions with the same name.
Unfortunately it would add the closing parenthesis in many cases
when there was another function with another name (e.g. to
Mod:module_info/0 even though there is a Mod:module_info/1).
Correct logic for adding parenthesis and add a test case.
|
|
* Introduce the helper function do_expand/1.
* Remove all ?line macros.
|