Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Luis Machado <lgustavo@codesourcery.com>
To: Tom Tromey <tromey@redhat.com>
Cc: "'gdb-patches@sourceware.org'" <gdb-patches@sourceware.org>
Subject: Re: [PATCH, c++ testsuite] Fix a few failures in gdb.cp/virtfunc.exp
Date: Tue, 04 Jun 2013 08:53:00 -0000	[thread overview]
Message-ID: <51ADAAEC.6020902@codesourcery.com> (raw)
In-Reply-To: <87vc5vmamh.fsf@fleche.redhat.com>

[-- Attachment #1: Type: text/plain, Size: 995 bytes --]

On 06/03/2013 06:17 PM, Tom Tromey wrote:
>>>>>> "Luis" == Luis Machado <lgustavo@codesourcery.com> writes:
>
> Luis> 2013-06-03  Luis Machado  <lgustavo@codesourcery.com>
> Luis> 	* gdb.cp/virtfunc.exp (make_one_vtable_result): Handle extra output
> Luis> 	from targets that use function descriptors in the virtual tables.
>
> Ok.  Thanks for looking at this.

Before checking in the patch, i figured out the rest of the problems.

Newer GDB's seem to have fixed a problem with displaying thunks in the 
virtual tables. Older ones did not demangle those names properly.

With that said, ppc64 uses dot symbols for those thunks, so we need to 
account for those in the testcase as well.

Here's the updated patch. I escaped dot once (\.) instead of twice. So 
hopefully this is the correct way. I often get confused with escaping in 
dejagnu.

With this fix, i see only a single failure for virtfunc.exp on ppc64. 
The other failure is more involved and i'm still chasing the root cause.

Luis


[-- Attachment #2: virtfunc_fix.diff --]
[-- Type: text/x-patch, Size: 732 bytes --]

2013-06-04  Luis Machado  <lgustavo@codesourcery.com>

	* gdb.cp/virtfunc.exp (make_one_vtable_result): Handle extra output
	from targets that use function descriptors in the virtual tables.
	Handle presence of dot symbols.

diff --git a/gdb/testsuite/gdb.cp/virtfunc.exp b/gdb/testsuite/gdb.cp/virtfunc.exp
index 2509cc7..1c2268a 100644
--- a/gdb/testsuite/gdb.cp/virtfunc.exp
+++ b/gdb/testsuite/gdb.cp/virtfunc.exp
@@ -234,7 +234,7 @@ proc make_one_vtable_result {name args} {
     set result "vtable for '${name}' @ $hex .subobject @ $hex.:$nls"
     set count 0
     foreach func $args {
-	append result ".${count}.: $hex <$func..>${nls}"
+	append result ".${count}.:( @$hex:)? $hex <(\.)?$func..>${nls}"
 	incr count
     }
 

  reply	other threads:[~2013-06-04  8:53 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-03 12:31 Luis Machado
2013-06-03 16:18 ` Tom Tromey
2013-06-04  8:53   ` Luis Machado [this message]
2013-06-04  9:03     ` Luis Machado
2013-06-04  9:10       ` Will Newton
2013-06-04  9:18         ` Luis Machado
2013-06-05 15:36     ` Tom Tromey
2013-06-05 20:39       ` Luis Machado

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51ADAAEC.6020902@codesourcery.com \
    --to=lgustavo@codesourcery.com \
    --cc=gdb-patches@sourceware.org \
    --cc=tromey@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox