From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29206 invoked by alias); 2 May 2011 14:53:11 -0000 Received: (qmail 28849 invoked by uid 22791); 2 May 2011 14:53:09 -0000 X-SWARE-Spam-Status: No, hits=-6.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 02 May 2011 14:52:52 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p42EqXLH014701 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 2 May 2011 10:52:33 -0400 Received: from host1.jankratochvil.net (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id p42EqVma022539 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 2 May 2011 10:52:33 -0400 Received: from host1.jankratochvil.net (localhost [127.0.0.1]) by host1.jankratochvil.net (8.14.4/8.14.4) with ESMTP id p42EqVmG024266; Mon, 2 May 2011 16:52:31 +0200 Received: (from jkratoch@localhost) by host1.jankratochvil.net (8.14.4/8.14.4/Submit) id p42EqT3q024262; Mon, 2 May 2011 16:52:29 +0200 Date: Mon, 02 May 2011 14:53:00 -0000 From: Jan Kratochvil To: Pedro Alves Cc: gdb-patches@sourceware.org, Marek Polacek , Joel Brobecker Subject: Re: [RFC] Fixing gdb.base/completion.exp (PR testsuite/12649) Message-ID: <20110502145229.GA22957@host1.jankratochvil.net> References: <4DB82F26.30801@redhat.com> <201104281614.31962.pedro@codesourcery.com> <20110501091630.GA16372@host1.jankratochvil.net> <201105021519.25614.pedro@codesourcery.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201105021519.25614.pedro@codesourcery.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-05/txt/msg00015.txt.bz2 On Mon, 02 May 2011 16:19:25 +0200, Pedro Alves wrote: > On Sunday 01 May 2011 10:16:30, Jan Kratochvil wrote: > > The "complete" command appraoch does introduce this new kind of race. > > > > But the patch can be commited in two parts if it is preferred although > > reviewing these racy send_gdb-gdb_expect cases for the intermediate step is > > tricky and it gets dropped immediately afterwards. > > What do you mean is dropped immediately afterwards? Replacing this send_gdb + gdb_expect by gdb_test "complete ..." makes the GDB codebase/testsuite more maintainable so I thought it could be changed now. I found easier to replace the current constructs by gdb_test "complete ..." at once although one can fix the gdb_expect first and delete it afterwards if you wish. Or are you against the replacement by gdb_test "complete ..."? I have checked the code paths (despite what Tom says) and personally I cannot imagine a difference between \t and the "complete" command. > > > @@ -410,7 +365,7 @@ gdb_expect { > > > timeout {fail "(timeout) complete 'p \"break1.'"} > > > } > > > } > > > - -re "^p \"break1\\..*$" > > > + -re "^p \"break1\\...*$" > > > { send_gdb "\n" > > > gdb_expect { > > > -re ".*$gdb_prompt $" { fail "complete 'p \"break1.'"} > > > > I do not see this change as valid/relevant. > > The pattern above reads: > > -re "^p \"break1\\.c\"$"\ > ... > -re "^p \"break1\\..*$" > ... > > It looked like "^p \"break1\\.c" could wrongly match the latter pattern, > if the "c" wasn't in the buffer yet? Aha. But this testcase always FAILs (which it always considers as XFAIL) because: (1) gdb.base/break1.o prevents the completion (during in-tree build) (2) GDB 7.3.50.20110502-cvs now completes it (with bundled readline) as: >p "break1.c < (note the trailing space) instead of expected >p "break1.c"< so it FAILs/XFAILs anyway. So I am not sure what should be there when it cannot work anyway. Thanks, Jan