From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9055 invoked by alias); 27 May 2002 13:25:54 -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 9030 invoked from network); 27 May 2002 13:25:50 -0000 Received: from unknown (HELO waller.constant.com) (217.167.220.90) by sources.redhat.com with SMTP; 27 May 2002 13:25:50 -0000 Received: (from bkoz@localhost) by waller.constant.com (8.11.6/8.11.6) id g4RDPk011891; Mon, 27 May 2002 06:25:46 -0700 Date: Mon, 27 May 2002 06:26:00 -0000 Message-Id: <200205271325.g4RDPk011891@waller.constant.com> To: gdb-patches@sources.redhat.com, mec@shout.net Subject: gdb.c++ testsuite 1.1: member_data.exp (resend) From: Benjamin Kosnik X-Organization: Red Hat/Paris X-URL: http://gcc.gnu.org/libstdc++ X-SW-Source: 2002-05/txt/msg00930.txt.bz2 I'm waiting for this to be checked in. Can I get an ETA please? ----- # 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 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" 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 50\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 50\\.\r\n$gdb_prompt $" { pass "set break at 50" } -re ".*$gdb_prompt $" { fail "set break at 50" } timeout { fail "(timeout) set break at 50" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data\\.cc:50\r\n.*$gdb_prompt $" { pass "continue to 50" } -re ".*$gdb_prompt $" { fail "continue to 50" } timeout { fail "(timeout) continue to 50" } } # simple object, const bool send_gdb "print test1.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "simple object, const bool" } -re ".*$gdb_prompt $" { fail "simple object, const bool" } timeout { fail "simple object, const bool" } } # simple object, const int send_gdb "print test1.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "simple object, const int" } -re ".*$gdb_prompt $" { fail "simple object, const int" } timeout { fail "simple object, const int" } } # simple object, long send_gdb "print test1.key2\n" gdb_expect { -re "4589\r\n$gdb_prompt $" { pass "simple object, long" } -re ".*$gdb_prompt $" { fail "simple object, long" } timeout { fail "simple object, long" } } # simple object, enum send_gdb "print test1.value\n" gdb_expect { -re "egyptian\r\n$gdb_prompt $" { pass "simple object, enum" } -re ".*$gdb_prompt $" { fail "simple object, enum" } timeout { fail "simple object, enum" } } # Two. send_gdb "break 51\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 51\\.\r\n$gdb_prompt $" { pass "set break at 51" } -re ".*$gdb_prompt $" { fail "set break at 51" } timeout { fail "(timeout) set break at 51" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data\\.cc:51\r\n.*$gdb_prompt $" { pass "continue to 51" } -re ".*$gdb_prompt $" { fail "continue to 51" } timeout { fail "(timeout) continue to 51" } } # derived template object, base const bool send_gdb "print test2.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "derived template object, base const bool" } -re ".*$gdb_prompt $" { fail "derived template object, base const bool" } timeout { fail "derived template object, base const bool" } } # derived template object, base const int send_gdb "print test2.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "derived template object, base const int" } -re ".*$gdb_prompt $" { fail "derived template object, base const int" } timeout { fail "derived template object, base const int" } } # derived template object, base long send_gdb "print test2.key2\n" gdb_expect { -re "7\r\n$gdb_prompt $" { pass "derived template object, base long" } -re ".*$gdb_prompt $" { fail "derived template object, base long" } timeout { fail "derived template object, base long" } } # derived template object, base enum send_gdb "print test2.value\n" gdb_expect { -re "oriental\r\n$gdb_prompt $" { pass "derived template object, base enum" } -re ".*$gdb_prompt $" { fail "derived template object, base enum" } timeout { fail "derived template object, base enum" } } # derived template object, enum send_gdb "print test2.value_derived\n" gdb_expect { -re "roman\r\n$gdb_prompt $" { pass "derived template object, enum" } -re ".*$gdb_prompt $" { fail "derived template object, enum" } timeout { fail "derived template object, enum" } } # Three. send_gdb "break 52\n" gdb_expect { -re "Breakpoint \[0-9\]*.*line 52\\.\r\n$gdb_prompt $" { pass "set break at 52" } -re ".*$gdb_prompt $" { fail "set break at 52" } timeout { fail "(timeout) set break at 52" } } send_gdb "continue\n" gdb_expect { -re "Continuing\\.\r\n\r\nBreakpoint.*at.*member_data\\.cc:52\r\n.*$gdb_prompt $" { pass "continue to 52" } -re ".*$gdb_prompt $" { fail "continue to 52" } timeout { fail "(timeout) continue to 52" } } # template object, derived template data member's base const bool send_gdb "print test3.data.test\n" gdb_expect { -re "true\r\n$gdb_prompt $" { pass "template object, const bool" } -re ".*$gdb_prompt $" { fail "template object, const bool" } timeout { fail "template object, const bool" } } # template object, derived template data member's base const int send_gdb "print test3.data.key1\n" gdb_expect { -re "5\r\n$gdb_prompt $" { pass "template object, const int" } -re ".*$gdb_prompt $" { fail "template object, const int" } timeout { fail "template object, const int" } } # template object, derived template data member's base long send_gdb "print test3.data.key2\n" gdb_expect { -re "7\r\n$gdb_prompt $" { pass "template object, long" } -re ".*$gdb_prompt $" { fail "template object, long" } timeout { fail "template object, long" } } # template object, derived template data member's base enum send_gdb "print test3.data.value\n" gdb_expect { -re "oriental\r\n$gdb_prompt $" { pass "template object, enum" } -re ".*$gdb_prompt $" { fail "template object, enum" } timeout { fail "template object, enum" } } # template object, derived template data member's enum send_gdb "print test3.data.value_derived\n" gdb_expect { -re "etruscan\r\n$gdb_prompt $" { pass "template object, enum" } -re ".*$gdb_prompt $" { fail "template object, enum" } timeout { fail "template object, enum" } } gdb_exit return 0