This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
FAIL: gdb.cp/cpexprs.exp: list base::overload(void)
- From: Pedro Alves <pedro at codesourcery dot com>
- To: gdb-patches at sourceware dot org, Keith Seitz <keiths at redhat dot com>
- Date: Fri, 1 Apr 2011 16:09:07 +0100
- Subject: FAIL: gdb.cp/cpexprs.exp: list base::overload(void)
I've been seeing these failures for a long while:
FAIL: gdb.cp/cpexprs.exp: list base::overload(void)
FAIL: gdb.cp/cpexprs.exp: setting breakpoint at base::overload(void)
FAIL: gdb.cp/cpexprs.exp: continue to base::overload(void)
gdb.log shows:
list base::overload(void)
the class `base' does not have any method instance named overload(void)
(gdb) FAIL: gdb.cp/cpexprs.exp: list base::overload(void)
and indeed, base::overload(void) is const:
// Some overloaded methods
int overload (void) const { return 0; } // base::overload(void) const
int overload (int i) const { return 1; } // base::overload(int) const
int overload (short s) const { return 2; } // base::overload(short) const
int overload (long l) const { return 3; } // base::overload(long) const
int overload (char* a) const { return 4; } // base::overload(char*) const
int overload (base& b) const { return 5; } // base::overload(base&) const
cpexprs.exp test all the other overloads with an explicit "const", but
the (void) one is tested for both const and non-nonst variants:
> # Overloaded methods (all are const -- we try to use the void
> # method with and without specifying "const")
Why is the non-const variant tried and expected to pass?
I tested as far back as 6.8 and it didn't work then either. Is this
trying to be a reminder that GDB could be more forgiving and accept
the non-const overload, perhaps? That'd sound more like as a
it-would-be-nice-if / feature-request than a bug, and shouldn't
be a FAIL.
Can we just drop it, like below?
--
Pedro Alves
Index: src/gdb/testsuite/gdb.cp/cpexprs.exp
===================================================================
--- src.orig/gdb/testsuite/gdb.cp/cpexprs.exp 2011-04-01 15:52:15.339770000 +0100
+++ src/gdb/testsuite/gdb.cp/cpexprs.exp 2011-04-01 15:53:18.469770000 +0100
@@ -196,12 +196,7 @@ add {base::~base} \
- \
-
-# Overloaded methods (all are const -- we try to use the void
-# method with and without specifying "const")
-add {base::overload(void)} \
- {int (const base * const)} \
- - \
- {base::overload(void) const}
+# Overloaded methods (all are const)
add {base::overload(void) const} \
{int (const base * const)} \
- \