# Copyright 2018-2019 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Tests whether =breakpoint=modified notification is sent when a single # breakpoint location is enabled or disabled via CLI. load_lib mi-support.exp set MIFLAGS "-i=mi" gdb_exit if {[mi_gdb_start]} { continue } # # Start here # standard_testfile .cc if {[gdb_compile "$srcdir/$subdir/$srcfile" $binfile executable {debug c++}] != "" } { return -1 } mi_run_to_main mi_gdb_test "break add" \ {(&.*)*.*~"Breakpoint 2 at.*\\n".*=breakpoint-created,bkpt=\{number="2",type="breakpoint".*\},\{number="2.1",enabled="y".*\}.*\n\^done} \ "break add" # Modify enableness through MI commands shouldn't trigger MI # notification. mi_gdb_test "-break-disable 2.2" "\\^done" "-break-disable 2.2" mi_gdb_test "-break-enable 2.2" "\\^done" "-break-enable 2.2" # Modify enableness through CLI commands should trigger MI # notification. mi_gdb_test "dis 2.2" \ {.*=breakpoint-modified,bkpt=\{number="2",type="breakpoint".*\},\{number="2.1",enabled="y".*\},\{number="2.2",enabled="n".*\}.*\n\^done} \ "dis 2.2" mi_gdb_test "en 2.2" \ {.*=breakpoint-modified,bkpt=\{number="2",type="breakpoint".*\},\{number="2.1",enabled="y".*\},\{number="2.2",enabled="y".*\}.*\n\^done} \ "en 2.2" mi_gdb_exit