GDBMI_exec_finish.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 07 Feb 2019 15:18:41 +0000
changeset 175 a04e1a36e888
parent 91 472a4841a8b6
child 223 5ba4abfcb7e7
permissions -rw-r--r--
Fix for multi-location breakpoints created initially as pending If the breakpoint has been created as pending breakpoint it is unknown whether it is a multi-location breakpoint or not so it has no locations. If, once the object is loaded abd breakpoint can be installed, it turns out there are multiple locations, we get an an =breakpoint-modified event listing all locations. Therefore, we have to update existing breakpoint and add locations.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
91
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     1
"
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     2
jv:libgdbs - GNU Debugger Interface Library
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     3
Copyright (C) 2015-now Jan Vrany
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     4
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     5
This library is free software; you can redistribute it and/or
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     7
License as published by the Free Software Foundation; either
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     8
version 2.1 of the License. 
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
     9
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    10
This library is distributed in the hope that it will be useful,
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    13
Lesser General Public License for more details.
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    14
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    16
License along with this library; if not, write to the Free Software
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    18
"
12
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
"{ Package: 'jv:libgdbs' }"
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
78
c24e7d8bc881 BUpdated build files.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12
diff changeset
    21
"{ NameSpace: Smalltalk }"
c24e7d8bc881 BUpdated build files.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12
diff changeset
    22
12
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
GDBMICommand subclass:#GDBMI_exec_finish
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
	instanceVariableNames:''
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
	classVariableNames:''
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
	poolDictionaries:''
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	category:'GDB-Core-Commands-MI'
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
!
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
!GDBMI_exec_finish class methodsFor:'documentation'!
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
91
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    32
copyright
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    33
"
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    34
jv:libgdbs - GNU Debugger Interface Library
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    35
Copyright (C) 2015-now Jan Vrany
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    36
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    37
This library is free software; you can redistribute it and/or
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    38
modify it under the terms of the GNU Lesser General Public
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    39
License as published by the Free Software Foundation; either
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    40
version 2.1 of the License. 
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    41
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    42
This library is distributed in the hope that it will be useful,
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    43
but WITHOUT ANY WARRANTY; without even the implied warranty of
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    44
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    45
Lesser General Public License for more details.
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    46
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    47
You should have received a copy of the GNU Lesser General Public
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    48
License along with this library; if not, write to the Free Software
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    49
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    50
"
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    51
!
472a4841a8b6 License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 78
diff changeset
    52
12
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
documentation
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
"
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
The `-exec-finish' Command
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
--------------------------
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
Synopsis
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
........
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
      -exec-finish [--reverse]
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
   Resumes the execution of the inferior program until the current
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
function is exited.  Displays the results returned by the function.  If
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
the `--reverse' option is specified, resumes the reverse execution of
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
the inferior program until the point where current function was called.
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
{No value for `GDBN'} Command
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
.............................
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
The corresponding {No value for `GDBN'} command is `finish'.
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
Example
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
.......
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
Function returning `void'.
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
     -exec-finish
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
     ^running
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
     (gdb)
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
     @hello from foo
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
     *stopped,reason='function-finished',frame={func='main',args=[],
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
     file='hello.c',fullname='/home/foo/bar/hello.c',line='7'}
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
     (gdb)
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
   Function returning other than `void'.  The name of the internal {No
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
value for `GDBN'} variable storing the result is printed, together with
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
the value itself.
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
     -exec-finish
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
     ^running
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
     (gdb)
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
     *stopped,reason='function-finished',frame={addr='0x000107b0',func='foo',
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
     args=[{name='a',value='1'],{name='b',value='9'}},
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
     file='recursive2.c',fullname='/home/foo/bar/recursive2.c',line='14'},
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
     gdb-result-var='$1',return-value='0'
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
     (gdb)
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
"
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
! !
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
!GDBMI_exec_finish methodsFor:'accessing'!
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
operation
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
	^ 'exec-finish'
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
! !
568a2971c977 Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108