Age | Commit message (Collapse) | Author |
|
* ks/supervisor-export-types:
supervisor: Type and spec related changes
|
|
- Export two more types so that they can be used in other modules
- Correct some types and specs
- Add spec for behaviour_info/1
|
|
* ms/security-fixes:
erlc: remove unused variable
typer: prevent buffer overflows
run_test: prevent buffer overflow
heart: prevent buffer overflow
escript: prevent buffer overflows
erlexec: prevent buffer overflows
erlc: prevent buffer overflows
dialyzer: prevent buffer overflows
OTP-8892
|
|
* bjorn/filelib-document-charset/OTP-8879:
filelib: Document the character set syntax in wildcards
|
|
* ks/export-types:
Export opaque types so as to be used by other modules
|
|
|
|
Check buffer operations on input from escripts, the command line and
environment variables.
|
|
|
|
|
|
Make it explicit that the shutdown timeout is to be specified in
milliseconds.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* maint-r13:
Remove copyright headers in vsn.mk files
Conflicts:
lib/appmon/vsn.mk
lib/erl_docgen/vsn.mk
lib/inets/vsn.mk
lib/kernel/vsn.mk
lib/reltool/vsn.mk
lib/ssl/vsn.mk
lib/stdlib/vsn.mk
lib/tools/vsn.mk
lib/tv/vsn.mk
lib/xmerl/vsn.mk
|
|
Copyright notices serve no useful purpose in vsn.mk files, and
only complicate scripts that automatically update version numbers.
|
|
* pan/ets_binary_overhead/OTP-8762:
Remove binary overhead counter from ets objects
|
|
* pan/ets_select_reverse/OTP-7863:
Add documentation for ets:select_reverse/1/2/3
Add testcase for ets:select_reverse/1/2/3
|
|
* pan/ms_transform_warnings/OTP-6759:
Add testcases for ms_transform warning and fix scoping
Add warnings for shadowed variables in ms_transform funs
|
|
* ia/public_key_api/OTP-8722:
Revise the public_key API
Resolved, version is now 0.8.
Conflicts:
lib/public_key/vsn.mk
|
|
Cleaned up and documented the public_key API to
make it useful for general use.
|
|
As the overhead counter got larger and never really was needed in ets objects,
I removed them.
A few stray comments of XXX:PaN type from halfword dev removed in the process.
|
|
* hb/type_reference/OTP-8733:
reference() substituted for ref() in docs
|
|
|
|
|
|
* rickard/ethread-rewrite/OTP-8544:
Rewrite ethread library
|
|
Large parts of the ethread library have been rewritten. The
ethread library is an Erlang runtime system internal, portable
thread library used by the runtime system itself.
Most notable improvement is a reader optimized rwlock
implementation which dramatically improve the performance of
read-lock/read-unlock operations on multi processor systems by
avoiding ping-ponging of the rwlock cache lines. The reader
optimized rwlock implementation is used by miscellaneous
rwlocks in the runtime system that are known to be read-locked
frequently, and can be enabled on ETS tables by passing the
`{read_concurrency, true}' option upon table creation. See the
documentation of `ets:new/2' for more information.
The ethread library can now also use the libatomic_ops library
for atomic memory accesses. This makes it possible for the
Erlang runtime system to utilize optimized atomic operations
on more platforms than before. Use the
`--with-libatomic_ops=PATH' configure command line argument
when specifying where the libatomic_ops installation is
located. The libatomic_ops library can be downloaded from:
http://www.hpl.hp.com/research/linux/atomic_ops/
The changed API of the ethread library has also caused
modifications in the Erlang runtime system. Preparations for
the to come "delayed deallocation" feature has also been done
since it depends on the ethread library.
Note: When building for x86, the ethread library will now use
instructions that first appeared on the pentium 4 processor. If
you want the runtime system to be compatible with older
processors (back to 486) you need to pass the
`--enable-ethread-pre-pentium4-compatibility' configure command
line argument when configuring the system.
|
|
|
|
|
|
|
|
|
|
* sverker/one_offheap_list/OTP-8737:
One off-heap list, to eliminate two words per ETS object.
|
|
Merging the three off-heap lists (binaries, funs and externals) into
one list. This reduces memory consumption by two words (pointers) per
ETS object.
|
|
* sverker/ets_select_hang/OTP-8732:
Fix ets:select hanging on ordered_set with empty list as key.
|
|
|
|
erl_db_tree.c incorrectly used NIL (empty list) as "lastkey" to mark
start of the iteration. A real NIL key could then cause a
select or match iteration to be restarted over and over again if the
last key before a trap happended to be NIL.
Changed NIL to THE_NON_VALUE. Should be ok as the initial key value can
never be put into any continuation tuple.
|
|
* pg/beam_lib_cmp_2_return_type_specification:
Fix beam_lib:cmp/2 return type specification
|
|
* cf/timer_tc:
Add timer:tc/2 to measure the elapsed time of anonymous functions
Conflicts:
lib/stdlib/doc/src/timer.xml
|
|
* ks/cleanups:
compiler: Fix incorrect types and specs
escript: Add more types to records
debugger: Clean up as suggested by tidier
docbuilder: Clean up as suggested by tidier
Conflicts:
lib/debugger/src/dbg_iload.erl
lib/debugger/src/dbg_ui_trace_win.erl
|
|
|
|
|
|
Also changed compiler to allow for warnings in parse_transforms.
|
|
|
|
Specify that beam_lib:cmp/2 can return {error, beam_lib, different_chunks} if a chunk is only present in one of the beams.
|
|
|
|
|
|
* pan/otp_8683_compiler_warnings:
Remove (harmless) warning regarding auto-imported BIF max/2
Update primary bootstrap
Correct warnings and errors for auto-imported bif clashes
Conflicts:
bootstrap/lib/stdlib/ebin/erl_lint.beam
|
|
warn_unused_import works correctly (does not give warnings when overridden).
Local call in guard gives its own error pointing out the local/imported
function.
Use of the phrase "overridden auto-imported bif" instead of "redefined
auto-imported bif" in textual error messages.
|