Re: [RFA 2/4] dwarf2_physname

Keith Seitz
2010-01-28T20:22:53Z

On 01/27/2010 11:12 AM, Keith Seitz wrote:
> On 01/26/2010 01:17 PM, Daniel Jacobowitz wrote:
>> I think that this means we should move on past the speed concern for
>> now, and focus on any other issues in the patch. Where were we on
>> that front?
>
> Let me grab Sami's last commit, re-run and see where we stand.

Okay, after some *more* linespec hacking, I have eliminated all the
regressions in the test suite (including some java failures that exist
on my archer-keiths-expr-cumulative branch).

Here is the summary for CVS HEAD on my box (updated yesterday):
# of expected passes 15396
# of unexpected failures 47
# of expected failures 43
# of untested testcases 14
# of unsupported tests 10

Same + my dwarf2_physname patches (including the cpexprs.exp tests):
# of expected passes 15790
# of unexpected failures 40
# of expected failures 43
# of untested testcases 14
# of unsupported tests 10

Diffs between the two (trivial test case fixes omitted):

PASS: gdb.cp/classes.exp: print cnsi with static members
PASS: gdb.cp/classes.exp: finish from marker_reg1
PASS: gdb.cp/classes.exp: calling method for small class
! FAIL: gdb.cp/classes.exp: print ctor of typedef class
PASS: gdb.cp/classes.exp: print dtor of typedef class
PASS: gdb.cp/classes.exp: list ByAnyOtherName::times
Running ../../../src/gdb/testsuite/gdb.cp/cpcompletion.exp ...
--- 10217,10223 ----
PASS: gdb.cp/classes.exp: print cnsi with static members
PASS: gdb.cp/classes.exp: finish from marker_reg1
PASS: gdb.cp/classes.exp: calling method for small class
! PASS: gdb.cp/classes.exp: print ctor of typedef class
PASS: gdb.cp/classes.exp: print dtor of typedef class
PASS: gdb.cp/classes.exp: list ByAnyOtherName::times
Running ../../../src/gdb/testsuite/gdb.cp/cpcompletion.exp ...
*************** PASS: gdb.cp/cpcompletion.exp: complete
*** 10227,10234 ****
--- 10227,10615 ----
PASS: gdb.cp/cpcompletion.exp: complete p a.g
PASS: gdb.cp/cpcompletion.exp: complete class methods
PASS: gdb.cp/cpcompletion.exp: complete class methods beginning with F
+ Running ../../../src/gdb/testsuite/gdb.cp/cpexprs.exp ...
+ PASS: gdb.cp/cpexprs.exp: set listsize 1
+ PASS: gdb.cp/cpexprs.exp: print base1::a_function
+ PASS: gdb.cp/cpexprs.exp: print base1::base1(int)
+ PASS: gdb.cp/cpexprs.exp: print base1::base1(void)
+ PASS: gdb.cp/cpexprs.exp: print base2::a_function
+ PASS: gdb.cp/cpexprs.exp: print base2::base2
+ PASS: gdb.cp/cpexprs.exp: print base::base(int)
+ PASS: gdb.cp/cpexprs.exp: print base::base(void)
+ PASS: gdb.cp/cpexprs.exp: print base::operator char*
+ PASS: gdb.cp/cpexprs.exp: print base::operator delete
+ PASS: gdb.cp/cpexprs.exp: print base::operator delete[]
+ PASS: gdb.cp/cpexprs.exp: print base::operator fluff*
+ PASS: gdb.cp/cpexprs.exp: print base::operator fluff**
+ PASS: gdb.cp/cpexprs.exp: print base::operator int
+ PASS: gdb.cp/cpexprs.exp: print base::operator new
+ PASS: gdb.cp/cpexprs.exp: print base::operator new[]
+ PASS: gdb.cp/cpexprs.exp: print base::operator!
+ PASS: gdb.cp/cpexprs.exp: print base::operator!=
+ PASS: gdb.cp/cpexprs.exp: print base::operator%
+ PASS: gdb.cp/cpexprs.exp: print base::operator%=
+ PASS: gdb.cp/cpexprs.exp: print base::operator&
+ PASS: gdb.cp/cpexprs.exp: print base::operator&&
+ PASS: gdb.cp/cpexprs.exp: print base::operator&=
+ PASS: gdb.cp/cpexprs.exp: print base::operator()
+ PASS: gdb.cp/cpexprs.exp: print base::operator*
+ PASS: gdb.cp/cpexprs.exp: print base::operator*=
+ PASS: gdb.cp/cpexprs.exp: print base::operator+
+ PASS: gdb.cp/cpexprs.exp: print base::operator++
+ PASS: gdb.cp/cpexprs.exp: print base::operator+=
+ PASS: gdb.cp/cpexprs.exp: print base::operator-
+ PASS: gdb.cp/cpexprs.exp: print base::operator--
+ PASS: gdb.cp/cpexprs.exp: print base::operator-=
+ PASS: gdb.cp/cpexprs.exp: print base::operator/
+ PASS: gdb.cp/cpexprs.exp: print base::operator/=
+ PASS: gdb.cp/cpexprs.exp: print base::operator<
+ PASS: gdb.cp/cpexprs.exp: print base::operator<<
+ PASS: gdb.cp/cpexprs.exp: print base::operator<<=
+ PASS: gdb.cp/cpexprs.exp: print base::operator<=
+ PASS: gdb.cp/cpexprs.exp: print base::operator=
+ PASS: gdb.cp/cpexprs.exp: print base::operator==
+ PASS: gdb.cp/cpexprs.exp: print base::operator>
+ PASS: gdb.cp/cpexprs.exp: print base::operator>=
+ PASS: gdb.cp/cpexprs.exp: print base::operator>>
+ PASS: gdb.cp/cpexprs.exp: print base::operator>>=
+ PASS: gdb.cp/cpexprs.exp: print base::operator[]
+ PASS: gdb.cp/cpexprs.exp: print base::operator^
+ PASS: gdb.cp/cpexprs.exp: print base::operator^=
+ PASS: gdb.cp/cpexprs.exp: print base::operator|
+ PASS: gdb.cp/cpexprs.exp: print base::operator|=
+ PASS: gdb.cp/cpexprs.exp: print base::operator||
+ PASS: gdb.cp/cpexprs.exp: print base::operator~
+ PASS: gdb.cp/cpexprs.exp: print base::overload(base&) const
+ PASS: gdb.cp/cpexprs.exp: print base::overload(char*) const
+ PASS: gdb.cp/cpexprs.exp: print base::overload(int) const
+ PASS: gdb.cp/cpexprs.exp: print base::overload(long) const
+ PASS: gdb.cp/cpexprs.exp: print base::overload(short) const
+ PASS: gdb.cp/cpexprs.exp: print base::overload(void)
+ PASS: gdb.cp/cpexprs.exp: print base::overload(void) const
+ PASS: gdb.cp/cpexprs.exp: print base::~base
+ PASS: gdb.cp/cpexprs.exp: print derived::a_function
+ PASS: gdb.cp/cpexprs.exp: print derived::derived
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, char, char>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, char, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, char, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, char, short>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, int, char>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, int, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, int, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, int, short>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, long, char>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, long, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, long, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, long, short>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, short, char>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, short, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, short, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, int, short, short>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, short, int, char>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, short, int, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, short, int, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, short, int, short>
+ PASS: gdb.cp/cpexprs.exp: print flubber<int, int, short, short, int>
+ PASS: gdb.cp/cpexprs.exp: print flubber<long, short, long, short, long>
+ PASS: gdb.cp/cpexprs.exp: print flubber<short, int, short, int, short>
+ PASS: gdb.cp/cpexprs.exp: print main
+ PASS: gdb.cp/cpexprs.exp: print policy1::function
+ PASS: gdb.cp/cpexprs.exp: print policy1::policy
+ PASS: gdb.cp/cpexprs.exp: print policy2::function
+ PASS: gdb.cp/cpexprs.exp: print policy2::policy
+ PASS: gdb.cp/cpexprs.exp: print policy3::function
+ PASS: gdb.cp/cpexprs.exp: print policy3::policy
+ PASS: gdb.cp/cpexprs.exp: print policy4::function
+ PASS: gdb.cp/cpexprs.exp: print policy4::policy
+ PASS: gdb.cp/cpexprs.exp: print policyd1::function
+ PASS: gdb.cp/cpexprs.exp: print policyd1::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd1::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd2::function
+ PASS: gdb.cp/cpexprs.exp: print policyd2::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd2::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd3::function
+ PASS: gdb.cp/cpexprs.exp: print policyd3::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd3::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd4::function
+ PASS: gdb.cp/cpexprs.exp: print policyd4::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd4::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd5::function
+ PASS: gdb.cp/cpexprs.exp: print policyd5::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd5::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<base, operation_1
>::function
+ PASS: gdb.cp/cpexprs.exp: print policyd<base, operation_1 >::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<base, operation_1
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<char, operation_1<char>
>::function
+ PASS: gdb.cp/cpexprs.exp: print policyd<char, operation_1<char> >::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<char, operation_1<char>
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<int, operation_1<int> >::function
+ PASS: gdb.cp/cpexprs.exp: print policyd<int, operation_1<int> >::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<int, operation_1<int> >::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<long, operation_1<long> >::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<long, operation_1<long>
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<tclass<int>,
operation_1<tclass<int> > >::function
+ PASS: gdb.cp/cpexprs.exp: print policyd<tclass<int>,
operation_1<tclass<int> > >::policyd
+ PASS: gdb.cp/cpexprs.exp: print policyd<tclass<int>,
operation_1<tclass<int> > >::~policyd
+ PASS: gdb.cp/cpexprs.exp: print tclass ::do_something
+ PASS: gdb.cp/cpexprs.exp: print tclass<char>::do_something
+ PASS: gdb.cp/cpexprs.exp: print tclass<int>::do_something
+ PASS: gdb.cp/cpexprs.exp: print tclass<long>::do_something
+ PASS: gdb.cp/cpexprs.exp: print tclass<short>::do_something
+ PASS: gdb.cp/cpexprs.exp: list base1::a_function
+ PASS: gdb.cp/cpexprs.exp: list base1::base1(int)
+ PASS: gdb.cp/cpexprs.exp: list base1::base1(void)
+ PASS: gdb.cp/cpexprs.exp: list base2::a_function
+ PASS: gdb.cp/cpexprs.exp: list base2::base2
+ PASS: gdb.cp/cpexprs.exp: list base::base(int)
+ PASS: gdb.cp/cpexprs.exp: list base::base(void)
+ PASS: gdb.cp/cpexprs.exp: list base::operator char*
+ PASS: gdb.cp/cpexprs.exp: list base::operator delete
+ PASS: gdb.cp/cpexprs.exp: list base::operator delete[]
+ PASS: gdb.cp/cpexprs.exp: list base::operator fluff*
+ PASS: gdb.cp/cpexprs.exp: list base::operator fluff**
+ PASS: gdb.cp/cpexprs.exp: list base::operator int
+ PASS: gdb.cp/cpexprs.exp: list base::operator new
+ PASS: gdb.cp/cpexprs.exp: list base::operator new[]
+ PASS: gdb.cp/cpexprs.exp: list base::operator!
+ PASS: gdb.cp/cpexprs.exp: list base::operator!=
+ PASS: gdb.cp/cpexprs.exp: list base::operator%
+ PASS: gdb.cp/cpexprs.exp: list base::operator%=
+ PASS: gdb.cp/cpexprs.exp: list base::operator&
+ PASS: gdb.cp/cpexprs.exp: list base::operator&&
+ PASS: gdb.cp/cpexprs.exp: list base::operator&=
+ PASS: gdb.cp/cpexprs.exp: list base::operator()
+ PASS: gdb.cp/cpexprs.exp: list base::operator*
+ PASS: gdb.cp/cpexprs.exp: list base::operator*=
+ PASS: gdb.cp/cpexprs.exp: list base::operator+
+ PASS: gdb.cp/cpexprs.exp: list base::operator++
+ PASS: gdb.cp/cpexprs.exp: list base::operator+=
+ PASS: gdb.cp/cpexprs.exp: list base::operator-
+ PASS: gdb.cp/cpexprs.exp: list base::operator--
+ PASS: gdb.cp/cpexprs.exp: list base::operator-=
+ PASS: gdb.cp/cpexprs.exp: list base::operator/
+ PASS: gdb.cp/cpexprs.exp: list base::operator/=
+ PASS: gdb.cp/cpexprs.exp: list base::operator<
+ PASS: gdb.cp/cpexprs.exp: list base::operator<<
+ PASS: gdb.cp/cpexprs.exp: list base::operator<<=
+ PASS: gdb.cp/cpexprs.exp: list base::operator<=
+ PASS: gdb.cp/cpexprs.exp: list base::operator=
+ PASS: gdb.cp/cpexprs.exp: list base::operator==
+ PASS: gdb.cp/cpexprs.exp: list base::operator>
+ PASS: gdb.cp/cpexprs.exp: list base::operator>=
+ PASS: gdb.cp/cpexprs.exp: list base::operator>>
+ PASS: gdb.cp/cpexprs.exp: list base::operator>>=
+ PASS: gdb.cp/cpexprs.exp: list base::operator[]
+ PASS: gdb.cp/cpexprs.exp: list base::operator^
+ PASS: gdb.cp/cpexprs.exp: list base::operator^=
+ PASS: gdb.cp/cpexprs.exp: list base::operator|
+ PASS: gdb.cp/cpexprs.exp: list base::operator|=
+ PASS: gdb.cp/cpexprs.exp: list base::operator||
+ PASS: gdb.cp/cpexprs.exp: list base::operator~
+ PASS: gdb.cp/cpexprs.exp: list base::overload(base&) const
+ PASS: gdb.cp/cpexprs.exp: list base::overload(char*) const
+ PASS: gdb.cp/cpexprs.exp: list base::overload(int) const
+ PASS: gdb.cp/cpexprs.exp: list base::overload(long) const
+ PASS: gdb.cp/cpexprs.exp: list base::overload(short) const
+ FAIL: gdb.cp/cpexprs.exp: list base::overload(void)
+ PASS: gdb.cp/cpexprs.exp: list base::overload(void) const
+ PASS: gdb.cp/cpexprs.exp: list base::~base
+ PASS: gdb.cp/cpexprs.exp: list derived::a_function
+ PASS: gdb.cp/cpexprs.exp: list derived::derived
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, char, char>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, char, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, char, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, char, short>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, int, char>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, int, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, int, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, int, short>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, long, char>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, long, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, long, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, long, short>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, short, char>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, short, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, short, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, int, short, short>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, short, int, char>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, short, int, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, short, int, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, short, int, short>
+ PASS: gdb.cp/cpexprs.exp: list flubber<int, int, short, short, int>
+ PASS: gdb.cp/cpexprs.exp: list flubber<long, short, long, short, long>
+ PASS: gdb.cp/cpexprs.exp: list flubber<short, int, short, int, short>
+ PASS: gdb.cp/cpexprs.exp: list main
+ PASS: gdb.cp/cpexprs.exp: list policy1::function
+ PASS: gdb.cp/cpexprs.exp: list policy1::policy
+ PASS: gdb.cp/cpexprs.exp: list policy2::function
+ PASS: gdb.cp/cpexprs.exp: list policy2::policy
+ PASS: gdb.cp/cpexprs.exp: list policy3::function
+ PASS: gdb.cp/cpexprs.exp: list policy3::policy
+ PASS: gdb.cp/cpexprs.exp: list policy4::function
+ PASS: gdb.cp/cpexprs.exp: list policy4::policy
+ PASS: gdb.cp/cpexprs.exp: list policyd1::function
+ PASS: gdb.cp/cpexprs.exp: list policyd1::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd1::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd2::function
+ PASS: gdb.cp/cpexprs.exp: list policyd2::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd2::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd3::function
+ PASS: gdb.cp/cpexprs.exp: list policyd3::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd3::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd4::function
+ PASS: gdb.cp/cpexprs.exp: list policyd4::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd4::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd5::function
+ PASS: gdb.cp/cpexprs.exp: list policyd5::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd5::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<base, operation_1 >::function
+ PASS: gdb.cp/cpexprs.exp: list policyd<base, operation_1 >::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<base, operation_1 >::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<char, operation_1<char> >::function
+ PASS: gdb.cp/cpexprs.exp: list policyd<char, operation_1<char> >::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<char, operation_1<char> >::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<int, operation_1<int> >::function
+ PASS: gdb.cp/cpexprs.exp: list policyd<int, operation_1<int> >::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<int, operation_1<int> >::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<long, operation_1<long> >::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<long, operation_1<long> >::~policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<tclass<int>,
operation_1<tclass<int> > >::function
+ PASS: gdb.cp/cpexprs.exp: list policyd<tclass<int>,
operation_1<tclass<int> > >::policyd
+ PASS: gdb.cp/cpexprs.exp: list policyd<tclass<int>,
operation_1<tclass<int> > >::~policyd
+ PASS: gdb.cp/cpexprs.exp: list tclass ::do_something
+ PASS: gdb.cp/cpexprs.exp: list tclass<char>::do_something
+ PASS: gdb.cp/cpexprs.exp: list tclass<int>::do_something
+ PASS: gdb.cp/cpexprs.exp: list tclass<long>::do_something
+ PASS: gdb.cp/cpexprs.exp: list tclass<short>::do_something
+ PASS: gdb.cp/cpexprs.exp: continue to base1::a_function
+ PASS: gdb.cp/cpexprs.exp: continue to base1::base1(int)
+ PASS: gdb.cp/cpexprs.exp: continue to base1::base1(void)
+ PASS: gdb.cp/cpexprs.exp: continue to base2::a_function
+ PASS: gdb.cp/cpexprs.exp: continue to base2::base2
+ PASS: gdb.cp/cpexprs.exp: continue to base::base(int)
+ PASS: gdb.cp/cpexprs.exp: continue to base::base(void)
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator char*
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator delete
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator delete[]
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator fluff*
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator fluff**
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator int
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator new
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator new[]
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator!
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator!=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator%
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator%=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator&
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator&&
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator&=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator()
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator*
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator*=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator+
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator++
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator+=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator-
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator--
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator-=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator/
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator/=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator<
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator<<
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator<<=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator<=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator==
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator>
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator>=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator>>
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator>>=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator[]
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator^
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator^=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator|
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator|=
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator||
+ PASS: gdb.cp/cpexprs.exp: continue to base::operator~
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(base&) const
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(char*) const
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(int) const
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(long) const
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(short) const
+ FAIL: gdb.cp/cpexprs.exp: setting breakpoint at base::overload(void)
+ FAIL: gdb.cp/cpexprs.exp: continue to base::overload(void)
+ PASS: gdb.cp/cpexprs.exp: continue to base::overload(void) const
+ PASS: gdb.cp/cpexprs.exp: continue to base::~base
+ PASS: gdb.cp/cpexprs.exp: continue to derived::a_function
+ PASS: gdb.cp/cpexprs.exp: continue to derived::derived
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, char, char>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, char, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, char, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, char, short>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, int, char>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, int, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, int, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, int, short>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, long, char>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, long, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, long, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, long, short>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, short, char>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, short, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, short, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, int, short, short>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, short, int, char>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, short, int, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, short, int, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, short, int, short>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<int, int, short, short, int>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<long, short, long,
short, long>
+ PASS: gdb.cp/cpexprs.exp: continue to flubber<short, int, short, int,
short>
+ PASS: gdb.cp/cpexprs.exp: continue to policy1::function
+ PASS: gdb.cp/cpexprs.exp: continue to policy1::policy
+ PASS: gdb.cp/cpexprs.exp: continue to policy2::function
+ PASS: gdb.cp/cpexprs.exp: continue to policy2::policy
+ PASS: gdb.cp/cpexprs.exp: continue to policy3::function
+ PASS: gdb.cp/cpexprs.exp: continue to policy3::policy
+ PASS: gdb.cp/cpexprs.exp: continue to policy4::function
+ PASS: gdb.cp/cpexprs.exp: continue to policy4::policy
+ PASS: gdb.cp/cpexprs.exp: continue to policyd1::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd1::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd1::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd2::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd2::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd2::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd3::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd3::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd3::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd4::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd4::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd4::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd5::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd5::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd5::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<base, operation_1
>::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<base, operation_1
>::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<base, operation_1
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<char, operation_1<char>
>::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<char, operation_1<char>
>::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<char, operation_1<char>
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<int, operation_1<int>
>::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<int, operation_1<int>
>::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<int, operation_1<int>
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<long, operation_1<long>
>::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<long, operation_1<long>
>::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<tclass<int>,
operation_1<tclass<int> > >::function
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<tclass<int>,
operation_1<tclass<int> > >::policyd
+ PASS: gdb.cp/cpexprs.exp: continue to policyd<tclass<int>,
operation_1<tclass<int> > >::~policyd
+ PASS: gdb.cp/cpexprs.exp: continue to tclass ::do_something
+ PASS: gdb.cp/cpexprs.exp: continue to tclass<char>::do_something
+ PASS: gdb.cp/cpexprs.exp: continue to tclass<int>::do_something
+ PASS: gdb.cp/cpexprs.exp: continue to tclass<long>::do_something
+ PASS: gdb.cp/cpexprs.exp: continue to tclass<short>::do_something
Running ../../../src/gdb/testsuite/gdb.cp/cplusfuncs.exp ...
PASS: gdb.cp/cplusfuncs.exp: detect dm_operator_comma
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_operator_char_star
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_char_star
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_foo_ref
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_int_star
*************** PASS: gdb.cp/cplusfuncs.exp: detect dm_t
*** 10236,10241 ****
--- 10617,10627 ----
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_unsigned_int
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_void
PASS: gdb.cp/cplusfuncs.exp: detect dm_type_void_star
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_type_short
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_type_unsigned_short
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_type_long
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_type_unsigned_long
+ PASS: gdb.cp/cplusfuncs.exp: detect dm_type_typedef
PASS: gdb.cp/cplusfuncs.exp: print &'overload1arg(void)'
PASS: gdb.cp/cplusfuncs.exp: print &'overload1arg(char)'
PASS: gdb.cp/cplusfuncs.exp: print &'overload1arg(signed char)'
*************** PASS: gdb.cp/member-ptr.exp: set var pmf
*** 11639,11644 ****
--- 12025,12031 ----
PASS: gdb.cp/member-ptr.exp: print *pmf
PASS: gdb.cp/member-ptr.exp: ptype *pmf
PASS: gdb.cp/member-ptr.exp: print (a.*pmf)(3)
+ PASS: gdb.cp/member-ptr.exp: ptype a.*pmf
PASS: gdb.cp/member-ptr.exp: print diamond_pmi
PASS: gdb.cp/member-ptr.exp: print diamond.*diamond_pmi
PASS: gdb.cp/member-ptr.exp: print diamond.*left_pmf
*************** PASS: gdb.cp/namespace.exp: ptype OtherF
*** 11768,11782 ****
KFAIL: gdb.cp/namespace.exp: ptype ::C::OtherFileClass (PRMS: gdb/1448)
PASS: gdb.cp/namespace.exp: ptype C::OtherFileClass
PASS: gdb.cp/namespace.exp: print cX
! FAIL: gdb.cp/namespace.exp: print 'F::cXf'
! FAIL: gdb.cp/namespace.exp: print F::cXf
! FAIL: gdb.cp/namespace.exp: print F::cXfX
PASS: gdb.cp/namespace.exp: print X
! FAIL: gdb.cp/namespace.exp: print 'G::Xg'
! FAIL: gdb.cp/namespace.exp: print G::Xg
! FAIL: gdb.cp/namespace.exp: print G::XgX
! FAIL: gdb.cp/namespace.exp: print cXOtherFile
! FAIL: gdb.cp/namespace.exp: print XOtherFile
PASS: gdb.cp/namespace.exp: print AAA::ALPHA
Running ../../../src/gdb/testsuite/gdb.cp/namespace-nested-import.exp ...
PASS: gdb.cp/namespace-nested-import.exp: print C::x
--- 12155,12169 ----
KFAIL: gdb.cp/namespace.exp: ptype ::C::OtherFileClass (PRMS: gdb/1448)
PASS: gdb.cp/namespace.exp: ptype C::OtherFileClass
PASS: gdb.cp/namespace.exp: print cX
! PASS: gdb.cp/namespace.exp: print 'F::cXf'
! PASS: gdb.cp/namespace.exp: print F::cXf
! PASS: gdb.cp/namespace.exp: print F::cXfX
PASS: gdb.cp/namespace.exp: print X
! PASS: gdb.cp/namespace.exp: print 'G::Xg'
! PASS: gdb.cp/namespace.exp: print G::Xg
! PASS: gdb.cp/namespace.exp: print G::XgX
! PASS: gdb.cp/namespace.exp: print cXOtherFile
! PASS: gdb.cp/namespace.exp: print XOtherFile
PASS: gdb.cp/namespace.exp: print AAA::ALPHA
Running ../../../src/gdb/testsuite/gdb.cp/namespace-nested-import.exp ...
PASS: gdb.cp/namespace-nested-import.exp: print C::x
*************** Running ../../../src/gdb/testsuite/gdb.c
*** 12051,12057 ****
PASS: gdb.cp/templates.exp: set multiple-symbols ask
KFAIL: gdb.cp/templates.exp: ptype T5<int> (PRMS: gdb/1111)
KFAIL: gdb.cp/templates.exp: ptype T5<int> (PRMS: gdb/1111)
! KFAIL: gdb.cp/templates.exp: constructor breakpoint (PRMS: gdb/1062)
PASS: gdb.cp/templates.exp: destructor breakpoint
PASS: gdb.cp/templates.exp: value method breakpoint
PASS: gdb.cp/templates.exp: breakpoint on a line with no real code
--- 12438,12444 ----
PASS: gdb.cp/templates.exp: set multiple-symbols ask
KFAIL: gdb.cp/templates.exp: ptype T5<int> (PRMS: gdb/1111)
KFAIL: gdb.cp/templates.exp: ptype T5<int> (PRMS: gdb/1111)
! PASS: gdb.cp/templates.exp: constructor breakpoint
PASS: gdb.cp/templates.exp: destructor breakpoint
PASS: gdb.cp/templates.exp: value method breakpoint
PASS: gdb.cp/templates.exp: breakpoint on a line with no real code

And yes, there are three failures in cpexprs.exp -- those all have to do
with the inability of linespecs to deal properly with const methods when
the user doesn't tell gdb that the method is const.

Keith

PS. Just a reminder how CVS HEAD does with cpexprs.exp:

# of expected passes 77
# of unexpected failures 54
# of unresolved testcases 247

[Yes, gdb crashes along the way.]