This is the mail archive of the mailing list for the GDB project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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)} \
     - \

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]