aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2013-02-11Fix type of error Reason on gen_tcp:send/2Sean Cribbs
When the TCP socket is in passive mode, it is possible that a close message has not been delivered to the controlling process before calling send/2. This results in the returning {error, closed} to the caller, in the same way that recv/2,3 does. This commit adjusts the type of the error "Reason" to include the atom 'closed'.
2013-02-07Update primary bootstrapBjörn Gustavsson
2013-02-07Merge branch 'bjorn/compiler/dialyzer-warnings'Björn Gustavsson
* bjorn/compiler/dialyzer-warnings: compile: Eliminate warnings for unmatched return values beam_receive: Eliminate dialyzer warning for unmatched return beam_validator: Eliminate dialyzer warnings for unmatched returns
2013-02-06Update primary bootstrapBjörn Gustavsson
2013-02-06Merge branch 'bjorn/stdlib/erl_lint-coverage'Björn Gustavsson
* bjorn/stdlib/erl_lint-coverage: Test calling deprecated or removed functions Test deprecating list_to_atom/1 to cover more code Cover binary syntax errors and warnings Remove unused error message {bittype_mismatch,_,_,_} Remove unused error message for importing an auto-imported BIF Remove the error message for future reserved keyword Test a few more kinds of illegal guard expressions Remove error handling for calling a BIF that is not auto-imported Provoke basic semantic errors to improve test coverage
2013-02-06Merge branch 'nox/fix-seq-opt/OTP-10818'Fredrik Gustafsson
* nox/fix-seq-opt/OTP-10818: Add two tests for unused multiple values in effect context Forbid multiple values in Core Erlang sequence arguments
2013-02-06Merge branch 'mh/duplicate_name_error_message/OTP-10797'Fredrik Gustafsson
* mh/duplicate_name_error_message/OTP-10797: Slightly nicer error message when node start fails due to duplicate name
2013-02-06Merge branch 'fredrik/tools/version_bumps'Fredrik Gustafsson
* fredrik/tools/version_bumps: Bumped version number
2013-02-06Bumped version numberFredrik Gustafsson
2013-02-06compile: Eliminate warnings for unmatched return valuesBjörn Gustavsson
2013-02-06beam_receive: Eliminate dialyzer warning for unmatched returnBjörn Gustavsson
2013-02-06beam_validator: Eliminate dialyzer warnings for unmatched returnsBjörn Gustavsson
The assert_fls/2 and assert_type/3 functions both return the Vst passed to them, but all callers ignore the return value. Given the name of the functions, they are not expected to return anything. Make it so by changing the return value to 'ok'. There are two calls to bsm_get_context/2 used only to validate that the match context is valid. Call bsm_validate_context/2 instead. In bsm_validate_context/2, explicitly match the return value of bsm_get_context/2 to '_' to make it clear that it is not used.
2013-02-05Merge branch 'jv/cover-patches/OTP-10778'Fredrik Gustafsson
* jv/cover-patches/OTP-10778: Fix a bug in cover when used with no_auto_import Ensure cover keeps the proper file source cover now relies on the compile info to find file sources
2013-02-04Add two tests for unused multiple values in effect contextAnthony Ramine
2013-02-04Update primary bootstrapBjörn Gustavsson
2013-02-04Merge branch 'bjorn/remove-packages/OTP-10348'Björn Gustavsson
* bjorn/remove-packages/OTP-10348: kernel docs: Remove references to specs_packages.xml
2013-02-04Merge branch 'bjorn/compiler/crash/OTP-10794'Björn Gustavsson
* bjorn/compiler/crash/OTP-10794: Test setelement(1, not_a_tuple, NewValue) Fix crash in the compiler when compiling element(2, not_a_tuple)
2013-02-04Merge branch 'bjorn/compiler/float/OTP-10788'Björn Gustavsson
* bjorn/compiler/float/OTP-10788: beam_type: Convert integer to float at compile time compiler: Use the literal pool for floating point constants
2013-02-04Update version numbersBjörn-Egil Dahlberg
2013-02-03Forbid multiple values in Core Erlang sequence argumentsAnthony Ramine
It does not make sense to return multiple values from a sequence argument and the Kernel Erlang passes can't cope with it. The linting pass now knows how to detect this kind of defunct code and the Core code folding pass is changed to not generate code like that when optimizing away multiple-valued lets in effect mode. Reported-by: José Valim
2013-01-31kernel docs: Remove references to specs_packages.xmlBjörn Gustavsson
2013-01-31Test calling deprecated or removed functionsBjörn Gustavsson
2013-01-31Test deprecating list_to_atom/1 to cover more codeBjörn Gustavsson
2013-01-31Cover binary syntax errors and warningsBjörn Gustavsson
2013-01-31Remove unused error message {bittype_mismatch,_,_,_}Björn Gustavsson
2013-01-31Remove unused error message for importing an auto-imported BIFBjörn Gustavsson
2013-01-31Remove the error message for future reserved keywordBjörn Gustavsson
There are currently no keywords reserved for the future.
2013-01-31Test a few more kinds of illegal guard expressionsBjörn Gustavsson
2013-01-31Remove error handling for calling a BIF that is not auto-importedBjörn Gustavsson
All guards BIFs are auto-imported. That can be verified like this: [] = [{F,A} || {erlang,F,A} <- erlang:system_info(snifs), erl_internal:guard_bif(F, A), not erl_internal:bif(F, A)] Therefore, calling a guard BIF in a guard without a module name is always allowed (provided that there is not a local function or an import with the same name), and therefore we can remove the error reporting code. But keep an assertion so that we will find out if any non-auto-imported guard BIFs are added in the future.
2013-01-31Provoke basic semantic errors to improve test coverageBjörn Gustavsson
2013-01-31beam_type: Convert integer to float at compile timeBjörn Gustavsson
In code such as: X / 2 the following code would be output from beam_type for the division: {fconv,{x,0},{fr,0}}. {fconv,{integer,2},{fr,1}}. fclearerror. {bif,fdiv,{f,0},[{fr,0},{fr,1}],{fr,0}}. That is, the integer 2 would be converted to the float 2.0 at run-time by "{fconv,{integer,2},{fr,1}}". Make sure that we do the conversion at compile time. Noticed-by: Richard O'Keefe
2013-01-31compiler: Use the literal pool for floating point constantsBjörn Gustavsson
The BEAM loader will put floating point constants into the literal pools for the module, but it will not check for duplicates. We can do much better by having the compiler use the literal pool for floating point constants.
2013-01-30Test setelement(1, not_a_tuple, NewValue)Björn Gustavsson
2013-01-30Fix crash in the compiler when compiling element(2, not_a_tuple)Björn Gustavsson
2013-01-29Prepare releaseOTP_R16A_RELEASE_CANDIDATEErlang/OTP
2013-01-29Revert "Prepare release"Sverker Eriksson
This reverts commit a0e362765d9d4afb0211f49eb787d2139b3eb7be. Conflicts: erts/vsn.mk
2013-01-29Merge branch 'rickard/r16/port-optimizations/OTP-10336'Rickard Green
* rickard/r16/port-optimizations/OTP-10336: Fix spelling in communication.xml Fix unmanaged thread progress delay
2013-01-29Fix spelling in communication.xmlRickard Green
Thanks to Richard O'Keefe
2013-01-29Fix unmanaged thread progress delayRickard Green
2013-01-28Merge branch 'rickard/async-default/OTP-10736'Rickard Green
* rickard/async-default/OTP-10736: Use no async threads for erlc
2013-01-28Revert "erts: Remove forgotten vxworks includes"Björn-Egil Dahlberg
This reverts commit 624751813b30a367c8255e86f26f7342aeb33cbc. Overzealous removal of vxworks includes
2013-01-28Merge branch 'sa/dialyzer-minor-fixes/R16A'Fredrik Gustafsson
* sa/dialyzer-minor-fixes/R16A: Fix wording of error message Fix reference results of a Dialyzer test
2013-01-28Fix wording of error messageStavros Aronis
2013-01-28Fix reference results of a Dialyzer testStavros Aronis
2013-01-28Merge branch 'pan/wx_and_gcc45'Patrik Nyblom
* pan/wx_and_gcc45: Make Mac wx use Apple compilers regardless of $CC
2013-01-28Merge branch 'sverk/ets-write_concurrency-locks'Sverker Eriksson
* sverk/ets-write_concurrency-locks: erts,stdlib: Increase number of locks for write_concurrency OTP-10787
2013-01-28Merge branch 'sverk/code_write_permission-assert'Sverker Eriksson
* sverk/code_write_permission-assert: erts: Fix ASSERT crash in erts_try_seize_code_write_permission
2013-01-28erts: Fix ASSERT crash in erts_try_seize_code_write_permissionSverker Eriksson
ASSERT(code_writing_process != c_p); The assert was actually harmless and could be removed as one solution. But I think it's better to keep it as a way to catch bugs that would otherwise lead to horrible deadlocks if a thread "forgets" to call erts_release_code_write_permission(). As a result erts_release_code_write_permission() must be called BEFORE resuming the suspended process.
2013-01-28Merge branch 'sverk/enc_atom-opt'Sverker Eriksson
* sverk/enc_atom-opt: erts: Optimize atom encoding to use memcpy for pure ascii erts: Refactor erts_atom_get to use ErtsAtomEncoding
2013-01-28Merge branch 'lukas/erts/fix_driver_call_memleak/OTP-10336'Lukas Larsson
* lukas/erts/fix_driver_call_memleak/OTP-10336: Fix memory leak in driver call functionality