aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib
AgeCommit message (Collapse)Author
2012-05-15Improve the nice 'badarith' message displayed by the shellHans Bolinder
2012-04-03Update version numbers for R15B02 devBjörn-Egil Dahlberg
2012-04-01Prepare releaseOTP_R15B01Erlang/OTP
2012-03-30Update copyright yearsBjörn-Egil Dahlberg
2012-03-22Merge branch 'raimo/close-ports-on-halt/OTP-9985' into maintRaimo Niskanen
* raimo/close-ports-on-halt/OTP-9985: erts: Basic test of erlang:halt/0..2 erts: Document erlang:halt/2 and update erlang:halt/0,1 erts: Implement erlang:halt/2 stdlib: Stop working around erlang:halt not flushing erts: Make erlang:halt/0,1 close ports and flush async threads erts: Remove forgotten and unused function erl_exit0 erts: Implement erl_halt erts: Remove unused ntbuild.erl
2012-03-21erts: Implement erlang:halt/2Raimo Niskanen
2012-03-21Teach edlin_expand_SUITE:init_per_suite independencePatrik Nyblom
2012-03-21io_proto_SUITE: make sure temp files are removedPatrik Nyblom
2012-03-21stdlib: Stop working around erlang:halt not flushingRaimo Niskanen
2012-03-20Correct a minor bug in qlc's testsuiteHans Bolinder
2012-03-16Merge branch 'rj/fix-supervisor-shutdown-doc' into maintGustav Simonsson
* rj/fix-supervisor-shutdown-doc: Fix small typo in kernel app doc Cosmetic: split very long lines from supervisor doc Fix supervisor doc: Shutdown, MaxR and MaxT type specs Add the type restrictions in the code comments Remove trailing spaces OTP-9987
2012-03-16Merge branch 'rj/fix-misc-doc-typos' into maintGustav Simonsson
* rj/fix-misc-doc-typos: Fix a code snippet and two typos in the doc
2012-03-05Merge branch 'hb/stdlib/digraph_condensation/OTP-9953' into maintHans Bolinder
* hb/stdlib/digraph_condensation/OTP-9953: Remove loops from the graph created by digraph_utils:condensation/1
2012-03-05Leave control back to gen_server during supervisor's restart loopSiri Hansen
When an attempt to restart a child failed, supervisor would earlier keep the execution flow and try to restart the child over and over again until it either succeeded or the restart frequency limit was reached. If none of these happened, supervisor would hang forever in this loop. This commit adds a timer of 0 ms where the control is left back to the gen_server which implements the supervisor. This way any incoming request to the supervisor will be handled - which could help breaking the infinite loop - e.g. shutdown request for the supervisor or for the problematic child. This introduces some incompatibilities in stdlib due to new return values from supervisor: * restart_child/2 can now return {error,restarting} * delete_child/2 can now return {error,restarting} * which_children/1 returns a list of {Id,Child,Type,Mods}, where Child, in addition to the old pid() or 'undefined', now also can be 'restarting'.
2012-03-01Remove loops from the graph created by digraph_utils:condensation/1Hans Bolinder
The function digraph_utils:condensation/1 used to create a digraph containing loops contradicting the documentation which states that the created digraph is free of cycles. Thanks to Kostis Sagonas for finding the bug.
2012-02-24Cosmetic: split very long lines from supervisor docRicardo Catalinas Jiménez
2012-02-24Merge branch 'uw/extending_gen' into maintGustav Simonsson
* uw/extending_gen: Add plugin support for alternative name lookup OTP-9945
2012-02-24Fix supervisor doc: Shutdown, MaxR and MaxT type specsRicardo Catalinas Jiménez
The next code snippets from supervisor.erl show that Shutdown from a child specification must be greater than zero and the same applies to MaxT. --- supervisor.erl ---------------------------------------------------------- validShutdown(Shutdown, _) when is_integer(Shutdown), Shutdown > 0 -> true; validShutdown(infinity, _) -> true; validShutdown(brutal_kill, _) -> true; validShutdown(Shutdown, _) -> throw({invalid_shutdown, Shutdown}). validIntensity(Max) when is_integer(Max), Max >= 0 -> true; validIntensity(What) -> throw({invalid_intensity, What}). validPeriod(Period) when is_integer(Period), Period > 0 -> true; validPeriod(What) -> throw({invalid_period, What}). -----------------------------------------------------------------------------
2012-02-24Add the type restrictions in the code commentsRicardo Catalinas Jiménez
2012-02-24Remove trailing spacesRicardo Catalinas Jiménez
2012-02-22Fix a code snippet and two typos in the docRicardo Catalinas Jiménez
2012-02-21erts: Fix bignum-bug in ETS with compressed optionSverker Eriksson
A large 64-bit immediate number will be stored as SMALL_BIG_EXT by ETS compressed format. When uncompressing, the SMALL_BIG_EXT was first decoded as as bignum (by bytes_to_big) and then turned into a small (by big_norm). This works for normal "binary_to_term" as decoded_size() over-estimates the needed heap size. But for ETS no over-estimation is done as the real term size is known and stored in DbTerm. Fixed by preventing bytes_to_big() from writing bignum digit when the number is seen to fit in an immediate.
2012-02-16Merge branch 'ahs/fix-gb_trees-doc' into maintHenrik Nord
* ahs/fix-gb_trees-doc: Put gb_trees documentation into alphabetical order OTP-9929
2012-02-16Merge branch 'rc/spell-registered' into maintHenrik Nord
* rc/spell-registered: Correct spelling of "registered" in various places in the source code OTP-9925
2012-02-16Merge branch 'rj/fix-binary-doc-spec' into maintHenrik Nord
* rj/fix-binary-doc-spec: Fix the type spec from the doc of binary:part/3 OTP-9920
2012-02-10Removed no longer needed codeIngela Anderton Andin
2012-02-09Remove usage of tuple funs in sofsHans Bolinder
2012-02-09Merge branch 'bjorn/remove-is_constant-vestiges/OTP-6454' into maintBjörn Gustavsson
* bjorn/remove-is_constant-vestiges/OTP-6454: HiPE: Remove support for is_constant/1 erl_lint: Remove handling of constant/1 erl_bif_types: Remove type for is_constant/1 erl_eval: Remove support for is_constant/1 Remove support for is_constant/1 in ms_transform Remove references to is_constant/1 from the match spec documentation
2012-02-09Merge branch 'bjorn/deprecations/OTP-9907' into maintBjörn Gustavsson
* bjorn/deprecations/OTP-9907: Deprecate the Toolbar application Deprecate applications that have been superseded by observer Suppress deprecated warnings in all modules that call 'gs' Deprecate the gs application Mark doc_builder as removed (and not merely deprecated)
2012-02-08Deprecate the gs applicationBjörn Gustavsson
2012-02-08Mark doc_builder as removed (and not merely deprecated)Björn Gustavsson
2012-02-06re_SUITE: Skip error_handling/1 if 're' is native codeBjörn Gustavsson
2012-02-05Fix the type spec from the doc of binary:part/3Ricardo Catalinas Jiménez
As the doc explains, the Len of part() can be negative.
2012-01-30shell_SUITE: Handle different EXIT reasons from native codeBjörn Gustavsson
2012-01-27sofs_SUITE: Handle different EXIT reasons from native codeBjörn Gustavsson
2012-01-27erl_eval_SUITE: Skip test of parameterized modules if native codeBjörn Gustavsson
Parameterized modules are not supported by HiPE.
2012-01-26erl_lint: Remove handling of constant/1Björn Gustavsson
2012-01-26erl_eval: Remove support for is_constant/1Björn Gustavsson
2012-01-26Remove support for is_constant/1 in ms_transformBjörn Gustavsson
2012-01-26erl_lint: Disallow call to is_record/3 if there is a local is_record/3Björn Gustavsson
Attempting to call is_record/3 (without an erlang: prefix) from a guard if there was a local function named is_record/3 would cause a compiler crash. For consistency with other guard tests, disallow the call. is_record/2 in a guard will still be allowed (and work correctly) even if there is a local is_record/2. It could be argued that is_record/2 should be handled in the same way as is_record/3, but changing that now could break working code.
2012-01-25Ensure that generated record operations don't call local functionsBjörn Gustavsson
Consistently use external (remote) calls to the BIFs element/2, setelement/3, and is_record/3.
2012-01-18Merge branch 'bjorn/compiler/bif-call-bug/OTP-9866' into maintBjörn Gustavsson
* bjorn/compiler/bif-call-bug/OTP-9866: erl_lint: Consistently reject local calls from guards
2012-01-18Merge branch 'egil/fix-error_logger-calendar/OTP-9854' into maintBjörn-Egil Dahlberg
* egil/fix-error_logger-calendar/OTP-9854: stdlib: Refactor to tag all times in error logger stdlib: Use utc time as base in error logger
2012-01-17erl_lint: Consistently reject local calls from guardsBjörn Gustavsson
If a guard test (such as is_list/1) has a local definition in a module (or is imported), erl_lint will reject a call to it from a guard if the call is not at the top-level: foo(L) when is_list(L) =:= true -> %% Will be rejected. ok. is_list(_) -> ok. But if the call is at the top-level, it will be accepted (and cause a crash in a later compiler pass): foo(L) when is_list(L) -> %% Will be accepted by erl_lint ok. is_list(_) -> ok. This inconsistency was an oversight introduced when it became possible to override BIFs with local definitions.
2012-01-11Merge branch 'sverk/wait_for_test_procs' into maintSverker Eriksson
* sverk/wait_for_test_procs: stdlib: Enable unused 'end_per_testcase' in ets_SUITE
2012-01-05stdlib: Refactor to tag all times in error loggerBjörn-Egil Dahlberg
2012-01-05stdlib: Use utc time as base in error loggerBjörn-Egil Dahlberg
* All computer time should be in utc and converted to local when needed * Previous conversion used the depcrated calendar:local_time_to_universal_time/1
2012-01-03Fix some broken links in documentationLukas Larsson
2012-01-03Correct spelling of "registered" in various places in the source codeRichard Carlsson
2011-12-20Don't save child spec for temporary child if child's start func returns ignoreSiri Hansen
Supervisor should never keep child specs for dead temporary children.