Age | Commit message (Collapse) | Author |
|
* egil/xmerl/fix-unmatched_return/OTP-13595:
xmerl: Fix unmatched return warnings
|
|
* egil/percept/fix-unmatched_return/OTP-13595:
egd: Fix unmatched return warnings
egd: Small code style refactoring
percept: Fix unmatched return warnings
percept: Small code style refactoring
|
|
* dgud/tools/emacs/PR-1054/OTP-13610:
Fix line-initial commas' indentation in type specs
|
|
Inside type specs, line-initial commas shall align with open curly
braces. This also applies to record definitions with type specs for
the fields.
For example:
-type foo() :: { a :: integer()
, b :: integer()
}.
For type specs for functions, the commas shall align with the opening
parenthese. So do a closing parenthese when put on a new line.
For example:
-spec foo( X :: integer()
, Y :: integer()
) -> integer().
This does not affect coding styles that don't put commas at the
beginning of lines.
|
|
* hasse/erl_docgen/datatype_anchors/OTP-13600/ERL-141:
kernel: Remove no longer needed anchors in documentation
stdlib: Remove no longer needed anchors in documentation
erts: Remove no longer needed anchors in documentation
erl_docgen: Add anchors to datatypes without name attribute
|
|
* bjorn/handle-bad-path/ERL-142:
Tolerate bad directories in the code path
|
|
* bjorn/erts/raise-doc/OTP-13599:
Remove the warning about using erlang:raise/3
|
|
* bjorn/erts/cuddle-with-tests:
time_SUITE: Make consistency/1 work in any timezone
|
|
|
|
This merge is actually only some left overs.
The bulk work for hipe-amd64-code-alloc has already been
merge (without ticket number) at 42a1166b47721cd444.
|
|
|
|
Second merge of this branch to master
with some more docs
|
|
* mikpe/otp-19-erts-integer-truncation-bugs/PR-1045/OTP-13606:
erl_unicode.c: fix integer truncation problems
do not limit heap fragments to 4 giga-words
erts_new_mso_binary(): do not truncate len
Conflicts:
erts/emulator/beam/erl_nif.c
|
|
|
|
* lukas/erts/max_heap_fix_erllvm/OTP-13174:
erts: Move max_heap_size field so that ErLLVM works again
|
|
|
|
* lukas/erts/re-openbsd-gcc-bug/OTP-13602:
erts: Fix OpenBSD gcc compiler bug in re code
|
|
The OpenBSD 5.8 gcc compiler emits erroneous code
which results in the re:run function behaving badly,
though strangely enough it does not segfault the vm.
This fix moves code around a bit in order to make gcc
emit correct code.
|
|
* lukas/erts/tracing/fix-non-smp-trace/OTP-13503:
erts: Fix erl_tracer xml doc errors
erts: Fix bug when tracing in non-smp non-scheduler thread
|
|
|
|
|
|
* dgud/wx/cmd-queue-bug:
Fix compilation warning
wx: Fix generated defines in gl.hrl
wx: Fix driver command queue
|
|
* jrobhoward/os_mon/fix-freebsd_get_os_wordsize/PR-1039/OTP-13601:
Fix memsup:get_os_wordsize() on 64-bit Linux PPC
os_mon: Test wordsize of memsup:get_os_wordsize/0
Fix memsup:get_os_wordsize() on 64-bit FreeBSD
|
|
|
|
|
|
* origin/ingela/public_key/tests:
public_key: Remove test_server config macros and unsed hooks
|
|
|
|
|
|
|
|
|
|
|
|
db_html.xsl generates anchors for data types referred to by strings
(instead of 'name' attributes). For example:
<datatype>
<name>edge()</name>
</datatype>
generates:
<p><a name="type-edge"><span class="bold_code">edge()</span></a><br></p>
|
|
* egil/egd/improve-line/OTP-13598:
egd: Save images during tests
egd: Use anti-aliasing for lines
egd: Add more line tests
egd: Add line thickness algorithm for lines
egd: Use maps to map height to line spans
egd: Refactor precompile objects
egd: Refactor object_on_line
egd: Refactor primitives style
egd: Improve span calculation
|
|
* ingela/inets/dialyzer:
inets: httpd_util:split does not return {error, Reason}
|
|
* hairyhum/eldap/ignore_tcp_errors_at_close/PR-1048/OTP-13590:
indentation
Ignore tcp errors during close request to eldap
|
|
|
|
Fix return value handling that was missed when code was refactored to
use re-module.
|
|
A bad directory in the path would prevent the run-time system
from starting:
$ echo >foobar
$ erl -pa foobar
{"init terminating in do_boot",{load_failed,[supervisor,kernel,gen_server,file_io_server,filename,file,erl_parse,error_logger,code_server,erl_lint,proc_lib,code,application_controller,application_master,gen_event,application,error_handler,lists,heart,gen,file_server,ets,erl_eval]}}
Crash dump is being written to: erl_crash.dump...done
init terminating in do_boot ()
The reason is that when attempting to read each of the BEAM files,
there would be an 'enotdir' error which
erl_prim_load:get_modules/2,3 assumed was a fatal error.
Update erl_prim_load:get_modules/2,3 to ignore any error and try
the next directory in the path.
Reported-by: http://bugs.erlang.org/browse/ERL-142
Reported-by: Michael Truog
|
|
|
|
Simple test against erlang:system_info({wordsize,external}).
|
|
There is no good reason to say that erlang:raise/3 is only for
debugging. Here is an example where it can be extremely
useful:
try
do_something(Args)
catch Class:Error ->
Stack = erlang:get_stacktrace(),
io:format("Args: ~p\n", [Args]),
erlang:raise(Class, Error, Stack)
That is, we can let it crash, but log additional useful
information before crashing.
Noticed-by: Per Hedeland
|
|
* mururu/os_mon/cpu-sup-osx/PR-1049/OTP-13597:
os_mon: Implement cpu_sup:util/0,1 on OSX
|
|
* egil/common_test/fix-doc-lint:
common_test: Fix doc tags of ct_netconfc
|
|
* ingela/ssl/cipher-suites-refactor:
ssl: Refactor to make code easier to understand
|
|
|
|
* kostis/dialyzer/opaque_type/OTP-13586/PR-1047:
Declare the erl_types:var_table() type as opaque
|
|
|
|
* bjorn/compiler/beam_bool/ERL-143:
Eliminate crash in beam_bool
Add beam_bool_SUITE
Add missing test cases in andor_SUITE and beam_block_SUITE
|
|
* bjorn/compiler/misc:
beam_utils: Correct break in conventions for split_even/1 and join_even/1
beam_utils: Remove clause checking for illegal set/4 instruction
beam_utils: Simplify the return value for check_liveness/3
beam_utils: Remove unused code
beam_utils: Let code_at/2 fail if the label does not exist
beam_utils: Remove unused handling of try/3 in live_opt/4
beam_utils: Correct translation of BIFs to tests
core_pp: Remove uncovered clause in is_simple_term/1
core_pp: Crash on unhandled Core Erlang forms
core_pp: Remove unused clauses in unindent/3 to improve coverage
core_pp: Remove useless try...catch
core_pp: Simplify printing of map literals
compile_SUITE: Cover numeric variable names in core_pp
compile_SUITE: Eliminate clones when re-compiling test suites
test_lib: Add is_cloned_mod/1
trycatch_SUITE: Cover the only uncovered line in sys_core_fold
test_lib: Correct calculation of number of processes
|
|
beam_bool would crash when attempting to optimize BEAM code similar
to this code:
bif '=:=' Reg1 SomeValue => y(0)
bif '=:=' Reg2 {atom,true} => x(2)
bif '=:=' Reg3 {atom,true} => x(3)
bif 'or' x(2) x(3) => x(2)
is_eq_exact Fail x(2) {atom,true}
The problem is that the first instruction that assigns a value to a Y
register. beam_bool:ssa_assign/2 will not accept a Y register
argument.
We could change ssa_assign/2 to accept a Y register, but that would
only cause the entire optimization to be rejected later because the Y
register is alive in the code that follows. Therefore, a better
solution is to modify extend_block/3 so that the instruction that
assign to Y registers are not added to the block. That is, the
optimizer will only operate on the following code:
bif '=:=' Reg2 {atom,true} => x(2)
bif '=:=' Reg3 {atom,true} => x(3)
bif 'or' x(2) x(3) => x(2)
is_eq_exact Fail x(2) {atom,true}
Usually the optimization will succeed, rewriting the four instructions
to a select_val instruction.
Assembly code such as the above can be produced by code similar to:
Y = Something == SomethingElse,
case Y of
Condition; OtherCondition ->
. . .
end,
. . .,
Y.
Reported-by: http://bugs.erlang.org/browse/ERL-143
Reported-by: José Valim
|