Age | Commit message (Collapse) | Author |
|
The pass sys_core_fold did not correctly handle non-matching patterns in code
such as:
0 = case <<>> of
<<>> -> 0;
a -> 1
end.
Function case_opt_lit/3 is rewritten in two passes to first remove any
non-matching clause and only then potentially remove the related patterns
in each clause.
Reported-by: Ulf Norell
|
|
* 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
|
|
|
|
* nox/maps-v3_core-lit_vars:
Properly collect variables in map expressions in v3_core
|
|
* origin/peppe/common_test/telnet_logging_final:
Add test cases and fix some problems with logging and with the telnet client
Get ct_telnet_client to print all data from server to log
Change telnet logging behaviour
OTP-11690
|
|
* hb/clarify_encoding:
Clarify the reference manual regarding source file encoding
|
|
* scrapinghub/update_session_error_logging_fix:
inets: Fix incorrect argument order
OTP-11794
|
|
* cobusc/correct_comment:
Fix comment that differs from code
OTP-11793
|
|
* nightfly19/pr/293:
Update compile instructions when compiling from git
OTP-11792
|
|
* technomancy/emacs-autoload:
Activate Emacs erlang-mode for .app files inside ebin directory.
Add more file types to Emacs auto-mode-alist.
Add Emacs autoloads for .erl and .app.src.
OTP-11788
|
|
|
|
* bjorn/compiler/utf8-warning/OTP-11791:
Don't fail compilation for modules that contain invalid UTF-8
epp: Make it possible to specify a default encoding
|
|
The introduction of c_map{} and c_map_pair{} unnecessarily broke the
alphabetical order of Core Erlang records. They were probably placed
at the end of the file so as to use other records as types. There is
really no need for this since 'cerl' contains appropriate definitions
of types that can be used for this purpose.
While at it, a type declaration to the c_binary{} definition was added.
|
|
The introduction of c_map and c_map_pair was not done properly. In
particular, the definition of ctype() and an important Edoc comment
were not up-to-date.
While at it,
- some more types were cleaned up and exported so as to be used
in core_parse.hrl and
- some obviously dead code was removed (the type/1 function does
not return 'nil', which in turn simplified a clause in the code
of meta_1/2).
|
|
* erlang/pr/289:
remove reference to dbg_wx_edit* modules that don't exist
|
|
* josevalim/set_cwd-typespec:
Correct file:set_cwd/1 typespec
OTP-11787
|