Age | Commit message (Collapse) | Author |
|
Even if a binary key is written as a literal the compiler may
choose to make an expression. Emit a warning in those cases
and saying the case will not match.
This is a limitation in current implementation.
|
|
No need to check for variables in Map keys.
|
|
Increases coverage.
|
|
Map pairs are encapsulated in a map.
|
|
|
|
|
|
Multiple 'nil' cannot happen on instruction level.
Map keys are always unique with literals.
|
|
Coverage removed by literals.
|
|
* hb/hipe/remove_debug_code:
hipe: Correct last commit of OTP-10342
|
|
Remove debug printouts.
|
|
* hb/stdlib/erl_lint_map_fix:
stdlib: warn if the type map() is redefined
|
|
|
|
* hb/dialyzer/deprecate_types/OTP-10342:
hipe: Add a few clauses for maps in erl_types
stdlib: Add more types to epp and erl_lint
|
|
|
|
|
|
* nox/reedr-closefrom:
Use closefrom(2) when available in child_setup
Conflicts:
erts/emulator/sys/unix/erl_child_setup.c
OTP-11809
|
|
* glacjay/epmd-argv:
ensure argv large enough for all possible args
OTP-11808
|
|
* fogfish/embedded-arm-android:
Raspberry PI / Android a minimal cross-compile configuration
OTP-11805
|
|
* scrapinghub/empty_set_cookie:
Added a condition to ignore empty Set-Cookie header and tests for it
OTP-11803
|
|
* nox/httpc-transfer-encoding-identity:
Support identity transfer-encoding in httpc
OTP-11802
|
|
* yiannist/hipe-llvm-backend:
Support the LLVM backend in HiPE
Implement the LLVM backend
Extend RTL API to support the LLVM backend
Add support for llvm unique symbols in hipe_gensym
Add a BIF that only returns the atom ok
Move some common code in hipe_pack_constants
Add better specs in hipe_pack_constants and cleanup
OTP-11801
|
|
* ia/inets/revert/OTP-11756:
inets: Continue CTify test suite
inets: Enable https tests
inets: Make test suites independent of each other
inets: Reverted commmit f97cd6965ac35d1cbe510de23592956857d144c8
|
|
|
|
* rickard/runtime-dep/OTP-11773:
Documentation fix
|
|
|
|
* hb/dialyzer/guard_constr/OTP-11798:
dialyzer: generalize guard constraints in a new way
|
|
Guard constraints used to be limited to a certain depth, which handled
mutually depending constraints safely, but also sometimes introduced
unnecessary generalizations.
This patch puts no explicit limit upon guard constraints (other than
those that already exist in erl_types), but breaks cycles by replacing
variables with the any() type.
In some cases the old method resulted in more warnings, but since the
limit was quite arbitrary and mutually depending guard constraints are
(very) rare, the new method should been seen as an improvement since
it handles cases that used to make Dialyzer loop or miss warnings.
|
|
* rickard/load-min-major/OTP-11799:
Introduce minimum allowed major driver and nif versions on load
|
|
|
|
Enable a cross compile Erlang/OTP platform to Android or Raspberry PI
using Android NDK. Port emulator and core application to support target
HW platform. Exclude any add-on services required for OTP platform deployment
into target hardware due to device fragmentation and jail-break requirements.
* fix erts/emulator/beam/sys.h
Disable redefinition of __noreturn macro
* port erts/emulator/sys/unix/erl_child_setup.c
Use techniques proposed by https://code.google.com/p/erlang4android to
access system properties
* fix erts/emulator/sys/unix/erl_unix_sys_ddll.c
The static linking of emulator cannot find dlerror(), dlopen() symbols
* port erts/emulator/sys/unix/sys.c
make path to shell configurable at build time
* port erts/etc/common/Makefile.in
disable librt for *-linux-androideabi
* port erts/lib_src/pthread/ethread.c
Use techniques proposed by https://code.google.com/p/erlang4android to
disable emulator crash if kernel threads are on. Replace unreliable
pthread_sigmask() by sigprocmask()
* port lib/erl_interface/src/connect/ei_connect.c
Disable call to undefined gethostid()
* port lib/erl_interface/src/connect/ei_resolve.c
Use gethostbyname_r() on Android platform
|
|
* rickard/runtime-dep/OTP-11773:
Introduce system_information:sanity_check()
Verify runtime_dependencies when running 'otp_build patch_app'
Add test-case verifying runtime dependencies found by xref
Introduce runtime_dependencies in .app files
Bump versions and ensure that all are "normal" versions
|
|
|
|
|
|
|
|
Most dependencies introduced are exactly the dependencies to other
applications found by xref. That is, there might be real dependencies
missing. There might also be pure debug dependencies listed that
probably should be removed. Each application has to be manually
inspected in order to ensure that all real dependencies are listed.
All dependencies introduced are to application versions used in
OTP 17.0. This since the previously used version scheme wasn't
designed for this, and in order to minimize the work of introducing
the dependencies.
|
|
Ensure all are "normal" versions according to the new version scheme
introduced in OTP 17.0
|
|
* hb/dialyzer/unknown_warnings:
Introduce a new warning option, 'no_unknown'
Return warnings for unknown types and functions in Erlang Mode
|
|
* vinoski/ds-enif-send:
enable enif_send to work from a dirty scheduler
|
|
Not (yet) documented.
|
|
The warnings about unknown types and functions are now returned
when calling Dialyzer from Erlang, in particular from an escript.
When calling Dialyzer from the command line the warnings about unknown
types and functions are output last as before; and when using the GUI
the warnings are displayed in a pop-up window, as before.
|
|
* hb/spec_related_fixes:
test_server: Fix a Dialyzer warning
Correct the contract of io:getopts()
Fix some Dialyzer warnings
|
|
|
|
|
|
Dialyzer recognizes a certain pattern that makes it possible to get
rid of 'The created fun has no local return' warnings.
|
|
* ks/cerl-type-fixes:
Restore the alphabetical order of Core Erlang records
Clean up the types of cerl
|
|
* bjorn/erts/fix-lingering-tracer:
Teach the call_time trace to notice when the trace dies (non-SMP system)
|
|
* bjorn/asn1/cleanup/OTP-11727:
Clean up reporting of errors in IMPORTS
asn1ct_check: Clean up error checking for INSTANCE OF
asn1ct_check: Rewrite error checking for INTEGER and BIT STRING
asn1ct_check: Remove unreachable clauses handling {identifier,_,_}
asn1ct_check: Let asn1_error/3 throw its result
|
|
* bjorn/cuddle-with-tests:
cover_SUITE:reconnect/1: Let the other side initiate the disconnect
Attempt to provide more information if a test case fails
prim_file_SUITE: Remove the short 5 seconds timetrap timeout
shell_SUITE: Give bs_match_bin_SUITE/1 more time
|
|
The call_time trace is a special kind of tracing that requires
a tracer process just like ordinary call trace, but it never
actually sends anything to the tracer. It merely use the existence
of a trace process (and call trace flags) as an indication that
call_time tracing is active for the process.
If the tracer dies in a non-SMP run-time system, processes with
call_time tracing would not notice that the tracer had
died. Furthermore, if the set_on_spawn flag was active, the dead
tracer could be propagaged to newly spawned processes.
Before accumulating trace information in a non-SMP system, always
validate the tracer process. (In an SMP system, a reference to a
dead tracer will be cleared away each time a process is scheduled.)
While we could put all of the new code beam_bp.c, we have chosen to
make a function call from beam_bp.c to a function in erl_trace.c for
clarity's sake and to ease further maintenance. In the future, we
might want to handle tracing in more similar ways in the SMP and
non-SMP system.
|
|
* siri/master-cuddle-with-tests:
Remove "coding: utf-8" from test files
Change encoding for XML files to utf-8
|