Age | Commit message (Collapse) | Author |
|
|
|
The beam_lib:cmp/2 function only compares the executable parts
of the BEAM files, not attributes or abstract code. Since the
types and specs (used by Dialyzer) are contained in the abstract
code, beam_lib:cmp/2 will return 'ok' if the only difference
between two BEAM file are in the types or specs.
If an Erlang/OTP system is installed in a revision control
system, and beam_lib:cmp/2 is used to avoid committing unchanged
but newly compiled BEAM files, BEAM files with no other changes
than in types or specs may not get updated, which can problems
if Dialyzer or the debugger is run.
To avoid that problem, change beam_lib:cmp/2 to compare all
chunks *except* for the "CInf" chunk. The "CInf" chunk contains
the compilation time, compiler options, and compiler version.
|
|
* rd/erlang-eunit:
erlang-eunit.el: Require cl, as it is used
|
|
|
|
* bg/remove-stray-ose-support:
configure: Remove stray OSE/Delta support
Makefiles: Remove stray OSE/Delta support
kernel tests: Remove stray OSE/Delta support
system tests: Remove stray OSE/Delta support
erl_interface tests: Remove stray OSE/Delta support
epmd: Remove stray OSE/Delta support
epmd: #ifdef out start_epmd() for other platforms than VxWorks
emulator tests: Remove stray OSE/Delta support
emulator: Remove stray OSE/Delta support
emulator: Eliminate #ifdef for sys_tty_reset()
test_server: Remove stray support for OSE/Delta
OTP-8585 bg/remove-stray-ose-support
|
|
|
|
|
|
|
|
Remove code supporting testing on OSE/Delta.
Some cross-testing support only used by OSE/Delta is kept
(see the mention of OSE in test_server_internal.hrl), because
it could presumably be useful in the future if we are to test
some other embedded system.
|
|
* ks/kernel:
kernel: Clean up as suggested by tidier
OTP-8606 ks/kernel
|
|
|
|
Alert handling has been improved to better handle unexpected but valid
messages and the implementation is also changed to avoid timing related
issues that could cause different error messages depending on network
latency. Packet handling was sort of broken but would mostly work as
expected when socket was in binary mode. This has now been fixed.
|
|
OTP-8607: https default port not handled
|
|
crypto application changed to use NIFs instead of driver.
|
|
|
|
* hawk/reltool:
Make some cleanups
Ensure that {error, Reason} is returned even when server dies
Introduced a new embedded_app_type option
Removed spurious CDATA in documentation
Automatically include applications that must be started
Add app test SUITE
Add app and appup files to reltool
Add function to return status about the configuration
Improved handling of applications explicitly included releases
Created escript for simplified usage from makefiles
OTP-8590 hawk/reltool
|
|
* bg/compiler-suppress-result-ignored:
compiler tests: Eliminate "result of expression is ignored" warnings
Silence warnings for expressions that are assigned to "_"
OTP-8602 bg/compiler-suppress-result-ignored
It is now possible to suppress the warning in code such as
"list_to_integer(S), ok" by assigning the ignored value "_" like this: "_ =
list_to_integer(S), ok".
|
|
Deprecated functions designated to be removed in R14 has been removed.
Also, some new functions has been marked as deprecated (the old http client
api module).
|
|
|
|
* ta/code_clash-filter-error:
code:clash/0: match correct return value from erl_prim_loader:list_dir/1
|
|
* ta/asn1-gratuitous-output:
Remove gratuitous ok report in asn1ct
|
|
* ta/nested-records:
Document R14 paren-less record access/update
Support nested record field access without parentheses
OTP-8597 ta/nested-records
Nested records can now be accessed without parenthesis. See the Reference
Manual for examples. (Thanks to YAMASHINA Hio and Tuncer Ayaz.)
|
|
|
|
|
|
* ms/re_infinite_loop:
Add testcase for infinite loop problem caused by reset of match_call_count
re: Fix non-termination for a certain regular expression
OTP-8589 Pcre may hang on a special regexp
A bug in re that could cause certain regular expression matches never to
terminate is corrected. (Thanks to Michael Santos and Gordon Guthrie.)
|
|
|
|
|
|
|
|
|
|
Original patch from YAMASHINA Hio posted to erlang-patches@
on Tue Jun 12 11:27:53 CEST 2007:
http://www.erlang.org/pipermail/erlang-patches/2007-June/000182.html
http://fleur.hio.jp/pub/erlang/record2.patch
Only had to do minor changes to port the patch to the
current R14A development tree.
Also added compiler/record_SUITE:nested_access/2 to test
nested record access with or without parentheses.
With this change the following will work.
-record(nrec0, {name = <<"nested0">>}).
-record(nrec1, {name = <<"nested1">>, nrec0=#nrec0{}}).
-record(nrec2, {name = <<"nested2">>, nrec1=#nrec1{}}).
nested_access() ->
N0 = #nrec0{},
N1 = #nrec1{},
N2 = #nrec2{},
<<"nested0">> = N0#nrec0.name,
<<"nested1">> = N1#nrec1.name,
<<"nested2">> = N2#nrec2.name,
<<"nested0">> = N1#nrec1.nrec0#nrec0.name,
<<"nested0">> = N2#nrec2.nrec1#nrec1.nrec0#nrec0.name,
<<"nested1">> = N2#nrec2.nrec1#nrec1.name,
<<"nested0">> = ((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0.name,
N1a = N2#nrec2.nrec1#nrec1{name = <<"nested1a">>},
<<"nested1a">> = N1a#nrec1.name,
N2a = N2#nrec2.nrec1#nrec1.nrec0#nrec0{name = <<"nested0a">>},
N2b = ((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0{name = <<"nested0a">>},
<<"nested0a">> = N2a#nrec0.name,
N2a = N2b,
ok.
Signed-off-by: Tuncer Ayaz <[email protected]>
|
|
* bg/compiler-fmove-opt:
beam_type: Improve coalescing of fmove/2 and move/2 instructions
|
|
|
|
* bg/deprecations:
test suites: Remove incidental use of deprecated concat_binary/1
Postpone removal of concat_binary/1
Remove deprecated lists:flat_length/1
OTP-8584 bg/deprecations
|
|
|
|
The function erl_scan:reserved_word/1 no longer returns true when given the
word spec. This bug was introduced in STDLIB-1.15.3 (R12B-3).
|
|
|
|
It is for embedded systems where all included applications must be
loaded from the boot script. If embedded_app_type is set to something
else than undefined all included applications will be included in
both the "rel" as well as in the "script".
|
|
|
|
Applications that are required to be started
before other applications according to their
app-file are now automatically included in
the release. The kernel and stdlib applications
are automatically included.
|
|
|
|
|
|
It is called reltool:get_status/1. The API functions in reltool
that may take PidOrOptions as input and actually gets Options
does now print out the warnings.
|
|
Applications that are listed in a release are now
automatically included.
|
|
|
|
erl_prim_loader:list_dir/1 returns error on failure and not
{error,_}.
Also update tests in code_SUITE:clash/1.
Defect was introduced with fix for listing .ez archives in 49da83de4b.
Initial code:clash/0 tests added in 79194d5fa7.
Signed-off-by: Tuncer Ayaz <[email protected]>
|
|
The following instruction sequence:
fmove {fr,Fr} {x,TempXreg}
move {x,TempXreg} {y,Dest}
is rewritten to:
fmove {fr,Fr} {y,Dest}
(Provided that {x,TempXreg} is killed by the instructions following
the sequence.)
Generalize the optimization to also handle:
fmove {fr,Fr} {x,TempXreg}
move {x,TempXreg} {_,Dest}
That is, the destination register can be either an X or Y register.
|
|
|
|
Temporary set the inet options on listen socket before doing accept
so that the correct options will be inherited by the accept socket.
Reset the options afterwards so that repeated use of listen socket
get user set values.
|
|
is not false.
|
|
|