1# Copyright 1998, 1999 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 2 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, write to the Free Software 15# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 16 17# Please email any bugs, comments, and/or additions to this file to: 18# bug-gdb@prep.ai.mit.edu 19 20if $tracelevel then { 21 strace $tracelevel 22} 23 24set prms_id 0 25set bug_id 0 26 27set prototypes 1 28set testfile "structs2" 29set srcfile ${testfile}.c 30set binfile ${objdir}/${subdir}/${testfile} 31 32# Create and source the file that provides information about the compiler 33# used to compile the test case. 34if [get_compiler_info ${binfile}] { 35 return -1; 36} 37 38# build the first test case 39if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { 40 # built the second test case since we can't use prototypes 41 warning "Prototypes not supported, rebuilding with -DNO_PROTOTYPES" 42 if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-DNO_PROTOTYPES}] != "" } { 43 gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." 44 } 45 set prototypes 0 46} 47 48# Start with a fresh gdb. 49 50gdb_start 51gdb_reinitialize_dir $srcdir/$subdir 52gdb_load ${binfile} 53 54gdb_test "set width 0" "" 55 56if { ![runto_main] } then { 57 gdb_suppress_tests 58} 59 60# Ok, we're finally ready to actually do our tests. 61 62set prms_id 13536 63set bug_id 0 64 65gdb_test "f" \ 66 ".*bkpt = 0.*" \ 67 "structs2 sanity check" 68 69gdb_test "break param_reg" \ 70 "Breakpoint .* at .*" \ 71 "structs2 breakpoint set" 72 73if [test_compiler_info gcc-*-*] { 74 setup_xfail hppa*-* gcc/15860 75} 76gdb_test "continue" \ 77 ".*pr_char=120.*pr_uchar=130.*pr_short=32000.*pr_ushort=33000.*bkpt = 1.*" \ 78 "structs2 continue1" 79 80if [test_compiler_info gcc-*-*] { 81 setup_xfail hppa*-* gcc/15860 82} 83gdb_test "continue" \ 84 ".*pr_char=-126.*pr_uchar=120.*pr_short=-32536.*pr_ushort=32000.*bkpt = 1.*" \ 85 "structs2 continue2" 86 87# End of tests. 88 89gdb_stop_suppressing_tests 90 91return 0 92