aboutsummaryrefslogtreecommitdiffstats
path: root/lib/debugger/src
AgeCommit message (Collapse)Author
2015-04-30debugger: Optimize evaluation of new map creationBjörn Gustavsson
Make sure that we recognize map literals at load time, as we do for lists and tuples. Also use maps:from_list/1 to build a new map instead of building it up from scratch inserting one key/value pair at the time.
2015-04-30dbg_iload: Correct translation of generatorsBjörn Gustavsson
The pattern in the generator for a list or binary comprehension was processed as an expression instead of as a pattern. That happened to work because expressions and patterns were translated in the same way. In the future we might want to process expressions and patterns differently.
2015-04-30debugger: Use module erl_annoHans Bolinder
2015-04-15Raise more descriptive error messages for failed map operationsBjörn Gustavsson
According to EEP-43 for maps, a 'badmap' exception should be generated when an attempt is made to update non-map term such as: <<>>#{a=>42} That was not implemented in the OTP 17. José Valim suggested that we should take the opportunity to improve the errors coming from map operations: http://erlang.org/pipermail/erlang-questions/2015-February/083588.html This commit implement better errors from map operations similar to his suggestion. When a map update operation (Map#{...}) or a BIF that expects a map is given a non-map term, the exception will be: {badmap,Term} This kind of exception is similar to the {badfun,Term} exception from operations that expect a fun. When a map operation requires a key that is not present in a map, the following exception will be raised: {badkey,Key} José Valim suggested that the exception should be {badkey,Key,Map}. We decided not to do that because the map could potentially be huge and cause problems if the error propagated through links to other processes. For BIFs, it could be argued that the exceptions could be simply 'badmap' and 'badkey', because the bad map and bad key can be found in the argument list for the BIF in the stack backtrace. However, for the map update operation (Map#{...}), the bad map or bad key will not be included in the stack backtrace, so that information must be included in the exception reason itself. For consistency, the BIFs should raise the same exceptions as update operation. If more than one key is missing, it is undefined which of keys that will be reported in the {badkey,Key} exception.
2014-12-19debugger: Fix debugger save options on macDan Gudmundsson
wxFileDialog:getPaths(FD) always return the empty list on mac when using file dialog.
2014-12-08debugger: Do not use the old removed gs functionalityDan Gudmundsson
dbg_ui_trace module was invoked even though the module had been removed.
2014-10-21debugger: clean up Common Test adaptionHans Bolinder
The ct_line module was removed some releases ago.
2014-08-26Install internal hrl files when necessaryPeter Lemenkov
Sometimes we install *.erl files. Some these files include a private *.hrl files, so in order to make these *.erl files usable we have to install these private includes as well. Signed-off-by: Peter Lemenkov <[email protected]>
2014-05-03Fix evaluation of map updates in the debugger and erl_evalAnthony Ramine
Reported-by: José Valim
2014-03-20Introduce runtime_dependencies in .app filesRickard Green
Most dependencies introduced are exactly the dependencies to other applications found by xref. That is, there might be real dependencies missing. There might also be pure debug dependencies listed that probably should be removed. Each application has to be manually inspected in order to ensure that all real dependencies are listed. All dependencies introduced are to application versions used in OTP 17.0. This since the previously used version scheme wasn't designed for this, and in order to minimize the work of introducing the dependencies.
2014-03-20Fix some Dialyzer warningsHans Bolinder
Dialyzer recognizes a certain pattern that makes it possible to get rid of 'The created fun has no local return' warnings.
2014-03-19Merge remote-tracking branch 'erlang/pr/289'Henrik Nord
* erlang/pr/289: remove reference to dbg_wx_edit* modules that don't exist
2014-03-15Fix evaluation of empty map updates in the debuggerAnthony Ramine
2014-03-10remove reference to dbg_wx_edit* modules that don't existVlad Dumitrescu
2014-02-18Fix library application appup filesTobias Schlager
As discussed in issue #240 *all* OTP library applications use the '.*' wildcard as up and down version. This makes library applications always up- and downgradeable. Using the wildcard version obsoletes all maintenance tasks regarding library applications' appup files. Additionally, it prevents upgrade problems caused by automatically included application dependencies when using reltool to create releases. Missing copyright headers are now consistently present.
2014-02-14Merge branch 'dgud/misc-cleanup'Dan Gudmundsson
* dgud/misc-cleanup: dbg: Remove debug printouts and fix file dialog sasl: Fix testcase which didn't work on windows gs: Minor doc fix, gs is deprecated
2014-02-12dbg: Remove debug printouts and fix file dialogDan Gudmundsson
Use default positions when open windows. Remove io:formats() for unhandled events. Fix file dialog completion window which didn't invoke refrash
2014-02-10Merge branch 'nox/debugger/erl_eval_SUITE/OTP-11676'Björn Gustavsson
* nox/debugger/erl_eval_SUITE/OTP-11676: Truly test debugger in erl_eval_SUITE copy
2014-02-10Truly test debugger in erl_eval_SUITE copyAnthony Ramine
The module was not interpreted. This surfaced two bugs, related to shadowed variables in binary patterns in comprehension generators, and guard filters not properly detected. The guard detection code from dbg_iload is deleted in favor of erl_lint:is_guard_test/1. The erl_lint module is now safe to use because it can handle all expressions emitted by sys_pre_expand, the following warning is thus obsolete and has been removed from code: %% Cannot use erl_lint here as sys_pre_expand has transformed source.
2014-02-07Merge branch 'vladdu/debugger/fixes'Björn Gustavsson
* vladdu/debugger/fixes: remove warning for variable exported from case remove useless match remove unused parameter
2014-02-05remove warning for variable exported from caseVlad Dumitrescu
2014-02-05remove useless matchVlad Dumitrescu
2014-02-05remove unused parameterVlad Dumitrescu
2014-02-04Support maps in the debuggerAnthony Ramine
A test is commented-out in map_SUITE:t_update_exact/1, waiting for a fixed maps:update/3 function with correct integer/float semantics.
2014-01-09Merge branch 'nox/fix-dbg_ieval-exporting-rules/OTP-11553'Björn Gustavsson
* nox/fix-dbg_ieval-exporting-rules/OTP-11553: compiler tests: Test exporting rules for andalso/orelse Fix evaluation of andalso and orelse in the debugger
2013-12-20Merge branch 'dgud/remove-gs-apps/OTP-10915'Dan Gudmundsson
2013-12-15Fix evaluation of andalso and orelse in the debuggerAnthony Ramine
Their exporting rules were not respected.
2013-12-12Support named funs in the debugger interpreterAnthony Ramine
The current code for the evaluation of ordinary funs is dependent on the order on variables in the fun environment as returned by erlang:fun_info(Fun, env). As it happened, adding the code for named funs changed the order in the environment for ordinary funs. To avoid the problem in the future, make sure that we only have one free variable in the funs that we will need to inspect using erlang:fun_info(Fun, env).
2013-11-11Remove gs parts of the debuggerDan Gudmundsson
2013-06-12Merge branch 'maint'Björn-Egil Dahlberg
2013-06-12Update copyright yearsBjörn-Egil Dahlberg
2013-05-06Fix unmatched_returns warnings in STDLIB and KernelHans Bolinder
2013-04-17Merge branch 'bjorn/fix-encoding/OTP-11041' into maintBjörn Gustavsson
* bjorn/fix-encoding/OTP-11041: Encode Erlang source files with non-ascii characters in UTF-8
2013-04-17Encode Erlang source files with non-ascii characters in UTF-8Björn Gustavsson
To ensure that 'master' compiles when we merge 'maint' to it, regardless of which encoding is default in 'master', all source files with non-ascii characters *must* have the encoding specified.
2013-04-05Use erlang:demonitor(Ref, [flush]) where applicableLoïc Hoguin
2013-03-07[debugger] Add an option 'Strings'Hans Bolinder
A new checkbox has been added. When it is checked, the range set by the 'erl' flag '+pc' is used for determining when to print lists of integers as strings. When it is unchecked, integer lists are never printed as strings. A minor incompatibility: settings saved by Erlang R16B01 or later cannot be read by Erlang R16B or earlier.
2013-02-18Make wx debugger use +pc flag when applicablePatrik Nyblom
2013-01-25Update copyright yearsBjörn-Egil Dahlberg
2013-01-25Make adjustments for UnicodeHans Bolinder
2013-01-23Turn warnings to errors on selected applicationsBjörn Gustavsson
2013-01-18Merge branch 'nox/enable-silent-rules/OTP-10726'Björn-Egil Dahlberg
* nox/enable-silent-rules/OTP-10726: Implement ./otp_build configure --enable-silent-rules
2013-01-15Implement ./otp_build configure --enable-silent-rulesAnthony Ramine
With silent rules, the output of make is less verbose and compilation warnings are easier to spot. Silent rules are disabled by default and can be disabled or enabled at will by make V=0 and make V=1.
2013-01-15Merge branch 'dgud/debugger/unicode/OTP-10679'Dan Gudmundsson
* dgud/debugger/unicode/OTP-10679: debugger: View terms as unicode-strings debugger: Fix code viewing on wxWidgets-2.9 debugger: Remove bad gs:call debugger: Fix user evalution dependent of bindings in trace window
2013-01-15Merge branch 'dgud/wx/fix-wx-2.9-compat/OTP-10407'Dan Gudmundsson
* dgud/wx/fix-wx-2.9-compat/OTP-10407: (26 commits) wx: Fix comments wx: Workaround wx-2.9 bugs wx: Mac fixes wx: Fix demo and tests wx: Allow 64 bits compilation on mac, requires wxWidgets-2.9 appmon: Move runtime part to runtime_tools app reltool: fix wxWidgets-2.9 compability debugger: Fix 2.9 compat observer: Fix check for graphics contexts Observer: Fix distribution dialog observer: Fix font sizes wx: Fix the demo wx: Fix loading icons and cursors in Windows wx: Remove unnecessary casts wx: Fix changed getfunctions wx: Depricate wxCursor new functions wx: Fix int to enum wx: Include correct m4 file in 2.9 wx: Update examples so they work with both wxWidgets 2.8 and 2.9 wx: Modify tests so they work on wxWidgets-2.9 ...
2013-01-11debugger: View terms as unicode-stringsDan Gudmundsson
Changed the displayed variables to be printed with ~tp to show default all lists and utf-8 binaries as unicode strings. If the user want to see the content without unicode strings he can click on them to see the content as integers, if not it only contains latin1 because ~p converts that. There is currently no way to display it as lists with indentation, so I choose to keep it as it was.
2013-01-11debugger: Fix code viewing on wxWidgets-2.9Dan Gudmundsson
wxWidgets contains more code format options and if they are not set it looks really bad.
2013-01-11debugger: Remove bad gs:callDan Gudmundsson
A present non working gs call was left in the code
2013-01-10debugger: Fix user evalution dependent of bindings in trace windowDan Gudmundsson
Bindings in erl_eval is an orddict and must be sorted otherwise they are not found, depending on creation order
2013-01-09debugger: Remove support for packagesBjörn Gustavsson
2013-01-09debugger: Fix 2.9 compatDan Gudmundsson
wxTextCtrl:setFocus selects all input. wxListBox:insertItems() Asserts for a zero list, sigh..