1# Copyright 2004, 2007 Free Software Foundation, Inc. 2# 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16if $tracelevel { 17 strace $tracelevel 18} 19 20set prms_id 0 21set bug_id 0 22 23set testfile "cursal" 24set srcfile ${testfile}.c 25set binfile ${objdir}/${subdir}/${testfile} 26 27if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != ""} { 28 untested "Couldn't compile $srcfile" 29 return -1 30} 31 32gdb_exit 33gdb_start 34gdb_reinitialize_dir $srcdir/$subdir 35gdb_file_cmd ${binfile} 36gdb_test "set listsize 1" \ 37 ".*" 38 39# initial sal should be first statement in main 40gdb_test "list" \ 41 "v0 = 0;" \ 42 "list before run" 43 44gdb_load ${binfile} 45if {! [runto_main]} { 46 return -1 47} 48 49gdb_test "list" \ 50 "v0 = 0;" \ 51 "list in main" 52 53if {! [runto "func2"]} { 54 return -1 55} 56 57gdb_test "list" \ 58 "v2 = 2;" \ 59 "list in func2" 60 61# make sure backtrace doesn't change current source location. 62gdb_test "backtrace" \ 63 ".*" 64gdb_test "list -1" \ 65 "v2 = 2;" \ 66 "list after backtrace" 67 68# check the window 69gdb_test "set listsize 3" \ 70 ".*" 71if {! [runto_main]} { 72 return -1 73} 74gdb_test "list" \ 75 "func1 \\(\\);" \ 76 "list size 3" 77 78return 0 79