Age | Commit message (Collapse) | Author |
|
The extended parser is used by the debugger for handling pids, ports,
references, and external funs in the evaluator area and in the
bindings area.
Notice that pids, ports, references, and external funs that cannot be
created in the currently running are ignored (as before).
|
|
|
|
|
|
|
|
|
|
|
|
The ct_line module was removed some releases ago.
|
|
|
|
Problems with the current stack implementation:
* The GUI assumes that the stack frame pushed on the stack
is level 2. If the 'no_tail' option is set for the process,
there may not be an entry for level 2.
* In each stack entry, the line number is the line number of
the caller, not the line number for the function in the 'mfa'
field as might be expected. That complicates generation of
a stacktrace with line number information.
Change the implementation as follows:
* Keep the information for the current function (its MFA and
current line number) in the #ieval{} record. Don't push it
onto the stack. Only push the information when another function
is called. That will ensure that the MFA and the line number
is found in the same stack entry. That also has the advantage
that if the 'no_tail' option is set, the stack not need to
be modified for tail-recursive calls.
* Make sure that there always is an entry for level two.
|
|
The 'last_call' is badly named. What is means is that the
next call will leave intepreted code.
|
|
|
|
|
|
|
|
|