From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9833 invoked by alias); 27 May 2002 13:27:44 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 9815 invoked from network); 27 May 2002 13:27:39 -0000 Received: from unknown (HELO waller.constant.com) (217.167.220.90) by sources.redhat.com with SMTP; 27 May 2002 13:27:39 -0000 Received: (from bkoz@localhost) by waller.constant.com (8.11.6/8.11.6) id g4RDRau11901; Mon, 27 May 2002 06:27:36 -0700 Date: Mon, 27 May 2002 06:28:00 -0000 Message-Id: <200205271327.g4RDRau11901@waller.constant.com> To: gdb-patches@sources.redhat.com, mec@shout.net Subject: gdb.c++ testsuite 1.3: member_data_static.exp (resend) From: Benjamin Kosnik X-Organization: Red Hat/Paris X-URL: http://gcc.gnu.org/libstdc++ X-SW-Source: 2002-05/txt/msg00932.txt.bz2 # Copyright 2002 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 2 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, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Tests for member static data # 2002-05-13 Benjamin Kosnik # This file is part of the gdb testsuite if $tracelevel then { strace $tracelevel } if { [skip_cplus_tests] } { continue } # # test running programs # set prms_id 0 set bug_id 0 set testfile "member_data_static" set srcfile ${testfile}.cc set binfile ${objdir}/${subdir}/${testfile} if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug c++}] != "" } { gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." } if [get_compiler_info ${binfile} "c++"] { return -1 } gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} if ![runto_main] then { perror "couldn't run to breakpoint" continue } # One. send_gdb "break 62\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 62\\.\r\n$gdb_prompt $" { pass "set break at 62" } -re ".*$gdb_prompt $" { fail "set break at 62" } timeout { fail "(timeout) set break at 62" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data_static\\.cc:62\r\n.*$gdb_prompt $" { pass "continue to 62" } -re ".*$gdb_prompt $" { fail "continue to 62" } timeout { fail "(timeout) continue to 62" } } # simple object, static const bool send_gdb "print test1.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "simple object, static const bool" } -re ".*$gdb_prompt $" { fail "simple object, static const bool" } timeout { fail "simple object, static const bool" } } # simple object, static const int send_gdb "print test1.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "simple object, static const int" } -re ".*$gdb_prompt $" { fail "simple object, static const int" } timeout { fail "simple object, static const int" } } # simple object, static long send_gdb "print test1.key2\n" gdb_expect { -re "77\r\n$gdb_prompt $" { pass "simple object, static long" } -re ".*$gdb_prompt $" { fail "simple object, static long" } timeout { fail "simple object, static long" } } # simple object, static enum send_gdb "print test1.value\n" gdb_expect { -re "oriental\r\n$gdb_prompt $" { pass "simple object, static enum" } -re ".*$gdb_prompt $" { fail "simple object, static enum" } timeout { fail "simple object, static enum" } } # Two. send_gdb "break 63\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 63\\.\r\n$gdb_prompt $" { pass "set break at 63" } -re ".*$gdb_prompt $" { fail "set break at 63" } timeout { fail "(timeout) set break at 63" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data_static\\.cc:63\r\n.*$gdb_prompt $" { pass "continue to 63" } -re ".*$gdb_prompt $" { fail "continue to 63" } timeout { fail "(timeout) continue to 63" } } # derived template object, base static const bool send_gdb "print test2.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "derived template object, base static const bool" } -re ".*$gdb_prompt $" { fail "derived template object, base static const bool" } timeout { fail "derived template object, base static const bool" } } # derived template object, base static const int send_gdb "print test2.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "derived template object, base static const int" } -re ".*$gdb_prompt $" { fail "derived template object, base static const int" } timeout { fail "derived template object, base static const int" } } # derived template object, base static long send_gdb "print test2.key2\n" gdb_expect { -re "77\r\n$gdb_prompt $" { pass "derived template object, base static long" } -re ".*$gdb_prompt $" { fail "derived template object, base static long" } timeout { fail "derived template object, base static long" } } # derived template object, base static enum send_gdb "print test2.value\n" gdb_expect { -re "oriental\r\n$gdb_prompt $" { pass "derived template object, base static enum" } -re ".*$gdb_prompt $" { fail "derived template object, base static enum" } timeout { fail "derived template object, base static enum" } } # derived template object, static enum send_gdb "print test2.value_derived\n" gdb_expect { -re "etruscan\r\n$gdb_prompt $" { pass "derived template object, static enum" } -re ".*$gdb_prompt $" { fail "derived template object, static enum" } timeout { fail "derived template object, static enum" } } # Three. send_gdb "break 64\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 64\\.\r\n$gdb_prompt $" { pass "set break at 64" } -re ".*$gdb_prompt $" { fail "set break at 64" } timeout { fail "(timeout) set break at 64" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data_static\\.cc:64\r\n.*$gdb_prompt $" { pass "continue to 64" } -re ".*$gdb_prompt $" { fail "continue to 64" } timeout { fail "(timeout) continue to 64" } } # template object, static derived template data member's base static const bool send_gdb "print test3.data.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "template object, static const bool" } -re ".*$gdb_prompt $" { fail "template object, static const bool" } timeout { fail "template object, static const bool" } } # template object, static derived template data member's base static const int send_gdb "print test3.data.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "template object, static const int" } -re ".*$gdb_prompt $" { fail "template object, static const int" } timeout { fail "template object, static const int" } } # template object, static derived template data member's base static long send_gdb "print test3.data.key2\n" gdb_expect { -re "77\r\n$gdb_prompt $" { pass "template object, static long" } -re ".*$gdb_prompt $" { fail "template object, static long" } timeout { fail "template object, static long" } } # template object, static derived template data member's base static enum send_gdb "print test3.data.value\n" gdb_expect { -re "oriental\r\n$gdb_prompt $" { pass "template object, static enum" } -re ".*$gdb_prompt $" { fail "template object, static enum" } timeout { fail "template object, static enum" } } # template object, static derived template data member's static enum send_gdb "print test3.data.value_derived\n" gdb_expect { -re "etruscan\r\n$gdb_prompt $" { pass "template object, static enum" } -re ".*$gdb_prompt $" { fail "template object, static enum" } timeout { fail "template object, static enum" } } gdb_exit return 0