* printmethod.exp FAIL
@ 2008-03-04 2:25 ligang
2008-03-04 2:51 ` Daniel Jacobowitz
0 siblings, 1 reply; 3+ messages in thread
From: ligang @ 2008-03-04 2:25 UTC (permalink / raw)
To: gdb
Hello all,
One case FAIL in printmethod.exp when running GDB testsuite for SCORE.
When testing "print theA->virt", the message GDB print is not expected.
I found the problem happen at cp_print_class_method ().
cp_print_class_method () will call METHOD_PTR_IS_VIRTUAL(addr) to
determine how to print theA->virt. Here, addr is address of theA->virt.
Also, #define METHOD_PTR_IS_VIRTUAL(ADDR) ((ADDR) & 0x80000000).
In my test, if addr <= 0x80000000, the case is PASS, otherwise FAIL.
Why does this tie to 0x80000000?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: printmethod.exp FAIL
2008-03-04 2:25 printmethod.exp FAIL ligang
@ 2008-03-04 2:51 ` Daniel Jacobowitz
2008-03-04 4:14 ` ligang
0 siblings, 1 reply; 3+ messages in thread
From: Daniel Jacobowitz @ 2008-03-04 2:51 UTC (permalink / raw)
To: ligang; +Cc: gdb
On Tue, Mar 04, 2008 at 10:24:57AM +0800, ligang@sunnorth.com.cn wrote:
> Hello all,
>
> One case FAIL in printmethod.exp when running GDB testsuite for SCORE.
> When testing "print theA->virt", the message GDB print is not expected.
> I found the problem happen at cp_print_class_method ().
>
> cp_print_class_method () will call METHOD_PTR_IS_VIRTUAL(addr) to
> determine how to print theA->virt. Here, addr is address of theA->virt.
> Also, #define METHOD_PTR_IS_VIRTUAL(ADDR) ((ADDR) & 0x80000000).
> In my test, if addr <= 0x80000000, the case is PASS, otherwise FAIL.
> Why does this tie to 0x80000000?
Please try a newer version of GDB. METHOD_PTR_IS_VIRTUAL was for an
old implementation of C++ (either HP or early g++); I removed it a
year or two ago.
--
Daniel Jacobowitz
CodeSourcery
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: printmethod.exp FAIL
2008-03-04 2:51 ` Daniel Jacobowitz
@ 2008-03-04 4:14 ` ligang
0 siblings, 0 replies; 3+ messages in thread
From: ligang @ 2008-03-04 4:14 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: gdb
> > cp_print_class_method () will call METHOD_PTR_IS_VIRTUAL(addr) to
> > determine how to print theA->virt. Here, addr is address of
theA->virt.
> > Also, #define METHOD_PTR_IS_VIRTUAL(ADDR) ((ADDR) & 0x80000000).
> > In my test, if addr <= 0x80000000, the case is PASS, otherwise FAIL.
> > Why does this tie to 0x80000000?
>
> Please try a newer version of GDB. METHOD_PTR_IS_VIRTUAL was for an
> old implementation of C++ (either HP or early g++); I removed it a
> year or two ago.
Thanks. I will try.
> --
> Daniel Jacobowitz
> CodeSourcery
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-03-04 4:14 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-04 2:25 printmethod.exp FAIL ligang
2008-03-04 2:51 ` Daniel Jacobowitz
2008-03-04 4:14 ` ligang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox