From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19245 invoked by alias); 15 Jun 2005 05:29:27 -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 19225 invoked by uid 22791); 15 Jun 2005 05:29:21 -0000 Received: from ausmtp01.au.ibm.com (HELO ausmtp01.au.ibm.com) (202.81.18.186) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Wed, 15 Jun 2005 05:29:21 +0000 Received: from sd0208e0.au.ibm.com (d23rh904.au.ibm.com [202.81.18.202]) by ausmtp01.au.ibm.com (8.12.10/8.12.10) with ESMTP id j5F3qSkS332886 for ; Wed, 15 Jun 2005 13:52:28 +1000 Received: from d23av02.au.ibm.com (d23av02.au.ibm.com [9.190.250.243]) by sd0208e0.au.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id j5F3qr8P102330 for ; Wed, 15 Jun 2005 13:52:53 +1000 Received: from d23av02.au.ibm.com (loopback [127.0.0.1]) by d23av02.au.ibm.com (8.12.11/8.13.3) with ESMTP id j5F3nx8i031865 for ; Wed, 15 Jun 2005 13:49:59 +1000 Received: from mjs.cn.ibm.com (mjs.cn.ibm.com [9.181.134.93]) by d23av02.au.ibm.com (8.12.11/8.12.11) with ESMTP id j5F3nvBj031751 for ; Wed, 15 Jun 2005 13:49:58 +1000 Date: Wed, 15 Jun 2005 05:29:00 -0000 From: Wu Zhou X-X-Sender: woodzltc@localhost.localdomain To: gdb-patches@sources.redhat.com Subject: Re: [RFC]: Add test for verifying the fix to the SEGV error when printing F77 array element In-Reply-To: <20050613025551.GC9288@nevyn.them.org> Message-ID: References: <20050613025551.GC9288@nevyn.them.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2005-06/txt/msg00190.txt.bz2 Hi Daniel, Thanks a lot for pointing out these problems. The re-worked patch is as follows. I had tested it on g77-3.2.3 (on Fedora Core 4 for i386), g77-3.3.3 and g77-3.4.3 (on SLES9 and RHEL4 for ppc64). Please review and comment. Thanks! array-element.f ==================================================== *** /dev/null 2005-06-14 07:40:50.585435768 +0800 --- gdb.fortran/array-element.f 2005-06-15 11:30:20.000000000 +0800 *************** *** 0 **** --- 1,32 ---- + c Copyright 2005 Free Software Foundation, Inc. + + c This program is free software; you can redistribute it and/or modify + c it under the terms of the GNU General Public License as published by + c the Free Software Foundation; either version 2 of the License, or + c (at your option) any later version. + c + c This program is distributed in the hope that it will be useful, + c but WITHOUT ANY WARRANTY; without even the implied warranty of + c MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + c GNU General Public License for more details. + c + c You should have received a copy of the GNU General Public License + c along with this program; if not, write to the Free Software + c Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + c This file is the F77 source for array-element.exp. It was written + c by Wu Zhou. (woodzltc@cn.ibm.com) + + dimension a(10) + call sub(a,10) + write(*,*) a + stop + end + + subroutine sub(a,n) + dimension a(n) + do 100 i = 1, n + a(i) = i + 100 continue + return + end array-element.exp ===================================================== *** /dev/null 2005-06-14 07:40:50.585435768 +0800 --- gdb.fortran/array-element.exp 2005-06-15 11:32:26.000000000 +0800 *************** *** 0 **** --- 1,60 ---- + # Copyright 2005 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. + + # This file was written by Wu Zhou. (woodzltc@cn.ibm.com) + + # This file is part of the gdb testsuite. It contains test for printing + # the elements of an array which is passed as pointer to a subroutine. + + if $tracelevel then { + strace $tracelevel + } + + set testfile "array-element" + set srcfile ${testfile}.f + set binfile ${objdir}/${subdir}/${testfile} + + if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f77}] != "" } { + untested "Couldn't compile ${srcfile}" + return -1 + } + + gdb_exit + gdb_start + gdb_reinitialize_dir $srcdir/$subdir + gdb_load ${binfile} + + if ![runto sub_] then { + perror "couldn't run to breakpoint sub_" + continue + } + + set bp_location [gdb_get_line_number "continue"] + gdb_test "break $bp_location" \ + "Breakpoint.*at.* file .*$srcfile, line $bp_location\\." \ + "breakpoint at continue" + + # Run to continue for the first time and print a(1) + gdb_test "continue" \ + "Continuing\\..*Breakpoint.*" \ + "continue to breakpoint" + gdb_test "print a(1)" ".*1 = 1.*" "print the first element of array a" + + # Run to continue for the second time and print a(2) + gdb_test "continue" \ + "Continuing\\..*Breakpoint.*" \ + "continue to breakpoint once again" + gdb_test "print a(2)" ".*2 = 2.*" "print the second element of array a" Cheers - Wu Zhou > Thanks. It does need some changes, but not big ones. > > I'd appreciated it if you could provide new files as diffs. The normal > way to do this is by diffing them against /dev/null, with the > appropriate relative path to the new file. That way, I can save your > message and apply it as a patch. > > Let's use hyphens instead of underscores in file names; there's already > a lot of hyphenated test cases. So array-element.exp. >