aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2011-08-25Merge branch 'bjorn/line-numbers-in-exceptions/OTP-9468' into majorBjörn Gustavsson
* bjorn/line-numbers-in-exceptions/OTP-9468: (51 commits) debugger: By default, only save non-tail-recursive calls debugger: Add line_number_SUITE debugger: Include line numbers in exceptions Update examples in the documentation to include line numbers Update documentation for erlang:raise/3 and erlang:get_stacktrace/0 beam_lib: Retain the "Line" chunk when stripping BEAM files erl: Add +L to suppress loading of line number information compiler: Add no_line_info for suppressing line/1 instructions exception_SUITE: Test line numbers in exceptions common_test: Use line numbers in exceptions common_test tests: Don't do detailed testing of the stack backtrace test_server: Refactor init_per_testcase/3 into two functions Implement process_info(Pid, current_{location,stacktrace}) beam_emu: Factor out saving of stack trace from save_stacktrace() compiler: Don't create filenames starting with "./" ops.tab: Remove line instructions before tail-recursive calls Lookup and include filenames and line numbers in exceptions Fix decrement of continuation pointers Refactor building of the exception stacktrace BEAM loader: Load the line table ...
2011-08-25Merge branch 'dev' into majorHenrik Nord
2011-08-24Merge branch 'anders/diameter/augment_inherited_enums/OTP-9469' into devAnders Svensson
* anders/diameter/augment_inherited_enums/OTP-9469: Allow @enum when AVP is defined in an inherited dictionary.
2011-08-24Merge branch 'anders/diameter/optional_appid_in_spec/OTP-9467' into devAnders Svensson
* anders/diameter/optional_appid_in_spec/OTP-9467: @id required in dictionary files only when @messages is specified.
2011-08-24Merge branch 'hw/update-chmod-without-f' into devHenrik Nord
* hw/update-chmod-without-f: Again: Call chmod without the "-f" flag OTP-9491
2011-08-24Merge branch 'ao/fix-percept-msgs' into devHenrik Nord
* ao/fix-percept-msgs: Fix message handling in select requests Add demonitor to avoid keeping DOWN message in the queue OTP-9490
2011-08-24Fix message handling in select requestsAhmed Omar
percept_db used to send results in untagged messages, and use a non selective receive to extract them. When percept is used from the shell process, this can confuse other messages with the actual result. Add a tag to the message to be {result, Result}.
2011-08-24Add demonitor to avoid keeping DOWN message in the queueAhmed Omar
fix one spec in do_start/0
2011-08-24Merge branch 'sa/dialyzer-server-loop-fix' into devHenrik Nord
* sa/dialyzer-server-loop-fix: Fix server loop detection OTP-9489
2011-08-23Merge branch 'gs/yecc-example' into devHenrik Nord
* gs/yecc-example: Fix incorrect order of pseudo variables in yecc example OTP-9484
2011-08-23Merge branch 'sa/dialyzer-small-fixes' into devHenrik Nord
* sa/dialyzer-small-fixes: Fix dialyzer warning on default clause for binary comprehension Update results of race_SUITE/extract_translations Update results of small_SUITE/flatten Add codec_can and list_to_bitstring tests Fix bug when reporting unused functions Update Dialyzer's r9c_suite results OTP-9483
2011-08-23Merge branch 'nick/ssh/stop_channel_tampers_with_trap_exit_flag/OTP-9386' ↵Niclas Eklund
into dev * nick/ssh/stop_channel_tampers_with_trap_exit_flag/OTP-9386: Corrected year in license header. OTP-9386 - Calling ssh_sftp:stop_channel/1 resulted in that the trap_exit flag was set to true for the invoking process.
2011-08-23Merge branch 'nick/lht-idl-compiler-opt/OTP-9460' into devNiclas Eklund
* nick/lht-idl-compiler-opt/OTP-9460: [IC] Changed version, added release note and updated license headers. ic: Fix typo, #ifudef -> #ifndef
2011-08-23Fix missing comma in code exampleRaimo Niskanen
Courtesy of William B. Morgan at Bigpoint Inc.
2011-08-18Fix incorrect order of pseudo variables in yecc examplegarrett
The example is for converting from infix to prefix. This change uses to correct ordering of the triplet.
2011-08-18[IC] Changed version, added release note and updated license headers.Niclas Eklund
2011-08-18Fix a bug in zip:zip_open/1,2.Hans Bolinder
zip:zip_open/1,2 did not accept binary archives. Also corrected the contracts of t/1 and tt/1.
2011-08-18debugger: By default, only save non-tail-recursive callsBjörn Gustavsson
By default, the debugger use to save all calls on its simulated stack. That could facilitate finding errors, but it could also mean that the Debugger could become very slow while executing tail-recursive code.
2011-08-18debugger: Add line_number_SUITEBjörn Gustavsson
2011-08-18debugger: Include line numbers in exceptionsBjörn Gustavsson
2011-08-18Update examples in the documentation to include line numbersBjörn Gustavsson
2011-08-18beam_lib: Retain the "Line" chunk when stripping BEAM filesBjörn Gustavsson
2011-08-18compiler: Add no_line_info for suppressing line/1 instructionsBjörn Gustavsson
Also update the r12 and r13 options so that they imply no_line_info.
2011-08-18common_test: Use line numbers in exceptionsBjörn Gustavsson
Remove the old kludgy parse transformations and line numbers macros in common_test and test_server, and use the line numbers in exceptions instead.
2011-08-18common_test tests: Don't do detailed testing of the stack backtraceBjörn Gustavsson
The exact layout of the stack backtrace is an implementation detail that may be changed at any time.
2011-08-18test_server: Refactor init_per_testcase/3 into two functionsBjörn Gustavsson
2011-08-18Merge branch 'hb/correction_of_zip_contracts/OTP-9471' into devHans Bolinder
* hb/correction_of_zip_contracts/OTP-9471: Correct contracts in the zip module
2011-08-18Merge branch 'hb/et/remove_dialyzer_warnings/OTP-9470' into devHans Bolinder
* hb/et/remove_dialyzer_warnings/OTP-9470: Remove Dialyzer warnings
2011-08-17Correct contracts in the zip moduleHans Bolinder
The contracts of zip:zip_list_dir/1 and zip:zip_get/2 have been corrected.
2011-08-17Merge branch 'ia/odbc/skip-tests-because-of-driver-issues' into devIngela Anderton Andin
* ia/odbc/skip-tests-because-of-driver-issues: Skip test if not applicable
2011-08-17Remove Dialyzer warningsHans Bolinder
2011-08-17Allow @enum when AVP is defined in an inherited dictionary.Anders Svensson
3GPP standards (for one) extend the values allowed for RFC 3588 AVP's of type Enumerated. Previously, extending an AVP was only possible by completely redefining the AVP.
2011-08-17@id required in dictionary files only when @messages is specified.Anders Svensson
@id defines an application identifier and this is used only when sending or receiving messages. A dictionary can define only AVP's however, to be included by other dictionaries using @inherits, in which case it makes no sense to require @id. Note that message definitions are not inherited with @inherits, only AVP's
2011-08-17Fix dialyzer warning on default clause for binary comprehensionIvan Dubrov
Fixed dialyzer warning occuring on binary comprehension of form "<< <<>> || {A, B} <- [{a, b}] >>" caused by default clause inserted by compiler. Since this clause is different from the case of list comprehension, dialyzer fails to suppress that warning.
2011-08-17ic: Fix typo, #ifudef -> #ifndefHaitao Li
2011-08-16Merge branch 'kj/eunit-surefire-fixes' into devHenrik Nord
* kj/eunit-surefire-fixes: Generate separate surefire XMLs for each test suite OTP-9465
2011-08-16Merge branch 'cr/trivia' into devHenrik Nord
* cr/trivia: replace "a ssl" with "an ssl" reindent pkix_path_validation/3 Trivial documentation fixes OTP-9464
2011-08-16compiler: Don't create filenames starting with "./"Björn Gustavsson
In the location information tables in the run-time system, source filenames that are the same as the module name plus ".erl" extension are not stored explicitly, thus saving memory. To take advantage of that optimization, avoid complicating the names of files in the current working directory; specifically, make sure that "./" is not prepended to the name.
2011-08-16Merge branch 'rc/edoc-minor' into devHenrik Nord
* rc/edoc-minor: forgot to ensure that xmerl is found in path for include_lib to work fix -spec declaration that doesn't work in R13B04 eliminate warnings about unused imports removed CVS-keywords from source files synchronized with edoc development version OTP-9463
2011-08-16Lookup and include filenames and line numbers in exceptionsBjörn Gustavsson
2011-08-16emulator: Add a fourth element in exception stacktracesBjörn Gustavsson
This commit is a preparation for introducing location information (filename/line number) in stacktraces in exceptions. Currently a stack trace looks like: [{Mod1,Function1,Arity1}, . . . {ModN,FunctionN,ArityN}] Add a forth element to each tuple that can be used indication the filename and line number of the source file: [{Mod1,Function1,Arity1,Location1}, . . . {ModN,FunctionN,ArityN,LocationN}] In this commit, the fourth element will just be an empty list, and we will change all code that look at or manipulate stacktraces.
2011-08-16Include location information for line instructions in BEAM filesBjörn Gustavsson
2011-08-16compiler: Generate line instructionsBjörn Gustavsson
2011-08-16compiler, emulator: Introduce the line/1 instructionBjörn Gustavsson
Introduce the line/1 instruction in the compiler and the BEAM virtual machine. It will not yet be generated by the compiler and will not actually carry any information.
2011-08-16v3_kernel: Make sure that line number annotations are passed throughBjörn Gustavsson
2011-08-16v3_core: Annotate exception-generating clauses with line numbersBjörn Gustavsson
2011-08-16Remove support for very old BEAM filesBjörn Gustavsson
Since the run-time system cannot load those BEAM files, it was not possible to debug them anyway.
2011-08-16Don't include tail-recursive calls in stacktracesBjörn Gustavsson
The stacktrace in debugger-generated exceptions should be as similar to stacktraces in BEAM-generated exceptions as possible.
2011-08-16Fix the no_tail optionBjörn Gustavsson
The 'no_tail' option was broken and would work almost as the 'all' option, because it would use #ieval.top (formerly known as #ieval.last_call) as the basis for its decision to push or not. Fix it by including a boolean in each call/apply instruction indicating whether the call is tail-recursive and pass that boolean to the dbg_istk:push() function.
2011-08-16dbg_ieval: Properly handle exceptions when binary construction failsBjörn Gustavsson
An exception from eval_bits:expr_grp/5 (for constructing binaries) was not caught and handled by exception/4; thus exit_info and and stacktrace for the process was not set.