Age | Commit message (Collapse) | Author |
|
|
|
|
|
* ia/public_key/prepare-for-release:
Prepare for release
|
|
|
|
* ta/dialyzer-doc:
dialyzer/doc: synchronize manual.txt and dialyzer.xml
dialyzer/doc: fix whitespace errors
dialyzer/doc: use consistent colons in type specs
OTP-9226
|
|
* ms/heart-rem-garbage-append:
heart: remove garbage appended to heart command
OTP-9224
|
|
* bjorn/compiler/coverage:
bs_match_SUITE: Improve coverage of beam_bsm
beam_bsm: Eliminate uncovered line in warning generation
match_SUITE: Cover a clause in beam_dead:forward/4
beam_dead: Remove uncovered special case handling of empty blocks
beam_dead: Remove uncovered clauses in binary matching optimization
beam_dead: Remove uncoverable case clause in update_value_dict/3
beam_dead: Remove code that cannot be covered in forward/4
record_SUITE: Cover optimization of is_record/3 in beam_type
compiler tests: Reinstate ?MODULE macro in calls to test_lib:recompile/1
|
|
* mh/eunit-surefire-reports:
Increase depth of error messages in Eunit Surefire reports
OTP-9220
|
|
* sa/dialyzer-invalid-spec-fix:
Fix crash related with the contract blame assignment patch
OTP-9219
|
|
* gc/gen-format-status-improvements:
Fix format_status bug for unregistered gen_event processes
Conflicts:
lib/stdlib/test/gen_event_SUITE.erl
OTP-9218
|
|
|
|
In warning_translate_label/2, gb_trees:lookup/2 is called
to translate from the entry label for a function to its name.
Since the gb_tree has an entry for all functions in the module,
there is no way that the lookup can fail unless there is a
serious bug.
Therefore, use gb_trees:get/2 so that an exception and an
internal compiler error will be generated if the lookup would
ever fail.
|
|
|
|
There is never any empty blocks when beam_dead is invoked.
Even if there were, they will be removed a little bit later in
forward/4.
|
|
In the optimization of binary matching, it seems that two clauses
cannot never be reached. Removing the clauses is safe, since that
would only mean that an opportunity for an optimization is lost
|
|
Because the code generator (v3_codegen) would not include the
same value more than once in a select_val/3 instruction and
because a label can only be referenced by one select_val/3
instruction, there is no way that the correct value could already
be in the gb_tree. (Even if it could happen, this change is
safe because only opportunity for an optimization would be missed;
incorrect code would not be generated.)
|
|
Since the optimizations in forward/4 already depends on some
assumptions on how code is generated anyway, document the
assumptions in a comment and remove the uncoverable code.
|
|
Since the introduction of improved record optimizations in
1858cb81391d2bce29b4b7620574ca60128cebf7 and
470c91d43eae54f63661645acbce4b92d73287cc, the optimization of
a is_record/3 call with a known correct type in
beam_type:simplify_basic_1/3 has not been covered.
|
|
In 3d0f4a3085f11389e5b22d10f96f0cbf08c9337f (an update to conform
with common_test), in all test_lib:recompile(?MODULE) calls, ?MODULE
was changed to the actual name of the module. That would cause
test_lib:recompile/1 to compile the module with the incorrect
compiler options in cloned modules such as record_no_opt_SUITE,
causing worse coverage.
|
|
|
|
|
|
|
|
* siri/sasl/rb-help-error/OTP-9166:
rb help error
|
|
* at/os_mon_dragonfly_support:
Add support for DragonFlyBSD to memsup
OTP-9217
|
|
* at/os_mon_netbsd_support:
Add NetBSD support to memsup and disksup
OTP-9216
|
|
* mk/net-kernel-epmd-return-list:
Fix list returned by net_kernel:epmd_module
OTP-9215
|
|
Currently, error messages in Eunit Surefire reports are shortened just
like when written to a terminal. However, the space limitations that
constrain terminal output do not apply here, so it's more useful to
include more of the error message. Getting the full error message can
be particularly helpful when an assertMatch fails because of a long
and deep error term.
The new depth of 100 should be enough for most cases, while protecting
against runaway errors.
|
|
* ts/cover-with-export_all:
add user specified compiler options on form reloading
OTP-9204
|
|
|
|
heart:get_cmd/0 is documented to return an empty string if the command is
cleared. get_cmd/0 returns 2 extra bytes: 1 byte for the trailing null,
1 byte from the op (the op is an unsigned char and 2 bytes are allocated
for it in the returned buffer).
1> heart:get_cmd().
{ok,[0,0]}
2> heart:set_cmd("echo hello").
ok
3> heart:get_cmd().
{ok,[101,99,104,111,32,104,101,108,108,111,0,0]}
4> heart:clear_cmd().
ok
5> heart:get_cmd().
{ok,[0,99]}
|
|
into dev
* ia/stdlib/supervisor-saves-temporary-child-specs/OTP-9167:
Completed bug fix "temporary child specs should not be kept when child terminates" and improved test suite
Fix issue with temporary children introduced by OTP-9064
|
|
* ks/hipe-ppc64:
Enable HiPE by default when compiling for PPC64
Translate RTL to PPC code on PPC64 too
Changes in ppc files for PPC64
Additions for the PPC64 backend
Changes for the PPC64 backend
Added loader for ppc64
New files for the 64-bit backends
Cleanup tags
OTP-9198
|
|
|
|
|
|
* mm/xmerl_doc_fixes:
Fix minor typos and improve punctuation in the xmerl_xpath @doc comment
OTP-9187
|
|
|
|
* bd/doc_fixes2:
Fix mistake in blowfish_ebc_en/decrypt docs
Compile fixes for earlier documentation fixes
Various small documentation fixes
OTP-9172
|
|
terminates" and improved test suite
The bug fix supplied by Filipe David Manana <[email protected]>
did not cover all possible ways that a process may be terminated
as for instance with supervisor:terminate_child. Also there
was a bug in the base case of the patch returning a list of a list instead
of only the list.
Added a timeout for the test cases, eliminated unnecessary sleeps,
improved code.
|
|
The temporary child specs are never removed from the supervisor's state, and
have they're MFA component set to {M, F, undefined} instead of the MFA passed
in the supervisor:start_child/2 call. Subsequent calls to supervisor:restart_child/2
may crash. Stack trace example:
{badarg,[{erlang,apply,[gen_server,start_link,undefined]},
{supervisor,do_start_child,2},{supervisor,handle_call,3},
{gen_server,handle_msg,5},
{proc_lib,init_p_do_apply,3}]}
|
|
The r11 option is no longer supported by the compiler (silently
ignored).
|
|
|
|
|
|
* sverker/hipe-binmatch-heap-corrupt:
Fix hipe bug in convert_matchstate, bignum-padding one word too long
OTP-9182
|
|
* sb/make-files-like-erlc:
Change make:files to behave more like erlc
OTP-9179
|
|
|
|
Fixed a couple of compilation errors. Also backed out a tiny change
that had already been added by Tuncer Ayaz in his binary-part-typo
branch.
|
|
This change fixes a bunch of small (and a few less small) typos and
other errors in various modules that I've spotted throughout my travels.
|
|
In a file containing declarations and comments without any empty lines
between them, the recomment_forms() function would associate a
multi-line comment with the declaration above it rather than the one
following it. (Thanks to Richard Carlsson.)
This bug has been reported several times. It was corrected by Kostis
Sagonas, but the fix didn't make into the R14B02 release.
|
|
DragonFly was partially supported by os_mon already but when trying to
start the os_mon application it'd crash with an error about an unknown
operating system in memsup. This patch changes memsup to use the FreeBSD
sysctl method to get memory information when on DragonFly.
|
|
The relevant commit is 8342fcf5395133a19d647f2ace606af9b7fc1732.
The old patch could emit warnings even for function that had a
problematic spec even without refinement. This warnings would
consume the relevant invalid spec warnings. This patch takes
care of this by ensuring that normal invalid spec messages are
emitted if the call that triggers the blame contract range
warning is in another module.
|