From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14649 invoked by alias); 10 Dec 2011 16:02:27 -0000 Received: (qmail 14626 invoked by uid 22791); 10 Dec 2011 16:02:24 -0000 X-SWARE-Spam-Status: No, hits=-7.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS 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; Sat, 10 Dec 2011 16:02:05 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pBAG1qWp028483 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 10 Dec 2011 11:01:52 -0500 Received: from host2.jankratochvil.net (ovpn-116-39.ams2.redhat.com [10.36.116.39]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id pBAG1jDp011260 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Sat, 10 Dec 2011 11:01:48 -0500 Date: Sat, 10 Dec 2011 19:27:00 -0000 From: Jan Kratochvil To: Tom Tromey Cc: Joel Brobecker , gdb-patches@sourceware.org Subject: [commit] testsuite: KFAIL gdb.cp/static-method.exp [Re: Regression for gdb.base/sigstep.exp with .debug_types] Message-ID: <20111210160145.GA7261@host2.jankratochvil.net> References: <20111205081911.GG28486@adacore.com> <20111209171630.GA30059@host2.jankratochvil.net> <20111209171937.GA30594@host2.jankratochvil.net> <20111209215319.GA5132@host2.jankratochvil.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20111209215319.GA5132@host2.jankratochvil.net> 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-12/txt/msg00320.txt.bz2 On Fri, 09 Dec 2011 22:53:19 +0100, Jan Kratochvil wrote: > Going to file it to GCC debug/ . I believe with proper GCC debug/ it would > work. Not sure now why it worked before but it probably does not matter. Doug has notified me it is an existing GCC PR debug/45682, it even has a workaround in GDB but that workaround is not applicable in this case [see the testsuite comment]. Therefore KFAILed it. (Not sure if it should be XFAIL or KFAIl but it does not matter much.) Checked in. Tested on x86_64-fedora16-linux-gnu. Thanks, Jan http://sourceware.org/ml/gdb-cvs/2011-12/msg00083.html --- src/gdb/testsuite/ChangeLog 2011/12/10 15:16:35 1.2974 +++ src/gdb/testsuite/ChangeLog 2011/12/10 15:58:14 1.2975 @@ -1,3 +1,13 @@ +2011-12-10 Jan Kratochvil + + * gdb.cp/static-method.exp (have_gcc_45682_fixed, info addr A::func()): + New variable, new test. + (list static-method.cc:xxx::(anonymous namespace)::A::func) + (list 'static-method.cc:xxx::(anonymous namespace)::A::func') + (list 'static-method.cc':'xxx::(anonymous namespace)::A::func') + (list static-method.cc:'xxx::(anonymous namespace)::A::func'): KFAIL + them if HAVE_GCC_45682_FIXED is not set. + 2011-12-10 Yao Qi * gdb.trace/status-stop.exp: New. --- src/gdb/testsuite/gdb.cp/static-method.exp 2011/07/18 15:15:06 1.2 +++ src/gdb/testsuite/gdb.cp/static-method.exp 2011/12/10 15:58:14 1.3 @@ -48,6 +48,23 @@ return -1 } +# The GDB workaround for GCC PR debug/45682 does not apply as it requires +# DW_AT_linkage_name of methods. The whole class A is in anonymous namespace, +# therefore not accessible outside of the CU (compilation unit) and therefore +# GCC does not produce DW_AT_linkage_name for such methods. + +set have_gcc_45682_fixed 1 +set test "info addr A::func()" +gdb_test_multiple $test $test { + -re "No symbol \"A::func\\(\\)\" in current context\\.\r\n$gdb_prompt $" { + pass $test + } + -re "Symbol \"A::func\\(\\)\" is a function at address .*\r\n$gdb_prompt $" { + kfail gcc/45682 $test + set have_gcc_45682_fixed 0 + } +} + if {![runto_main]} { perror "couldn't run to breakpoint" continue @@ -68,9 +85,25 @@ # Test whether the function/method can be "list"ed # with the filename pre-pended. + if {[string compare $test "xxx::${ans}::A::func"] == 0 + && !$have_gcc_45682_fixed} { + setup_kfail gcc/45682 "*-*-*" + } gdb_test "list ${srcfile}:$test" $result + if {[string compare $test "xxx::${ans}::A::func"] == 0 + && !$have_gcc_45682_fixed} { + setup_kfail gcc/45682 "*-*-*" + } gdb_test "list '${srcfile}:$test'" $result + if {[string compare $test "xxx::${ans}::A::func"] == 0 + && !$have_gcc_45682_fixed} { + setup_kfail gcc/45682 "*-*-*" + } gdb_test "list '${srcfile}':'$test'" $result + if {[string compare $test "xxx::${ans}::A::func"] == 0 + && !$have_gcc_45682_fixed} { + setup_kfail gcc/45682 "*-*-*" + } gdb_test "list ${srcfile}:'$test'" $result # Test setting and hitting a breakoint at the function/method.