gdb.base/nodebug.exp: Rename called functions
authorPedro Alves <palves@redhat.com>
Thu, 14 Sep 2017 17:09:42 +0000 (18:09 +0100)
committerPedro Alves <palves@redhat.com>
Thu, 14 Sep 2017 17:32:00 +0000 (18:32 +0100)
commit26e53f3eace35cabeec4559d417df99a48f6477a
tree7df61dc8cf5dc24612d2d2d9a5aa325a37565ecf
parenteccd80d69487586578b7e085d8bd48657a4d7322
gdb.base/nodebug.exp: Rename called functions

I'm seeing these failures on my system:

  FAIL: gdb.base/nodebug.exp: p (double) mult (2.0, 3.0)
  FAIL: gdb.base/nodebug.exp: p ((double (*) (double, double)) mult)(2.0f, 3.0f)
  FAIL: gdb.base/nodebug.exp: p ((double (*) (double, double)) mult)(2, 3)

The problem is simply that GDB is finding a symbol named "mult" from
glibc's debug info:

  (gdb) ptype mult
  type = enum expression_operator {var, num, lnot, mult, divide, module, plus, minus, less_than, greater_than, less_or_equal, greater_or_equal, equal, not_equal, land, lor,  qmop}

  (gdb) info types expression_operator
  All types matching regular expression "expression_operator":

  File plural-exp.h:
  enum expression_operator;

Fix this by unloading symbols from shared libraries.

gdb/testsuite/ChangeLog:
2017-09-14  Pedro Alves  <palves@redhat.com>

* gdb.base/nodebug.exp (nodebug_runto): New procedure.
(top level): Use it instead of runto.
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/nodebug.exp