1# Copyright 2003, 2007, 2008, 2009, 2010, 2011 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 then { 17 strace $tracelevel 18} 19 20 21set testfile complex 22set srcfile ${testfile}.c 23set binfile ${objdir}/${subdir}/${testfile} 24set options debug 25 26if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $options] != "" } { 27 # No support for __complex__, presumably. 28 unsupported "print complex packed value in C" 29 unsupported "print complex value in C" 30 return 0 31} 32 33# Start with a fresh gdb. 34 35if [get_compiler_info ${binfile}] { 36 return -1 37} 38 39gdb_exit 40gdb_start 41gdb_reinitialize_dir $srcdir/$subdir 42gdb_load $binfile 43 44if [runto f2] then { 45 get_debug_format 46 if { [test_compiler_info gcc-2-*] && [test_debug_format "DWARF 2"] } then { 47 setup_xfail "*-*-*" 48 } 49 gdb_test "p *y" "\\\$\[0-9\]* = \{c = 42 '\\*', f = 1 \\+ 0 \\* I\}" \ 50 "print complex packed value in C" 51} 52 53if [runto f4] then { 54 gdb_test "p *y" "\\\$\[0-9\]* = \{c = 42 '\\*', f = 1 \\+ 0 \\* I\}" \ 55 "print complex value in C" 56} 57 58return 0 59