Fix testcases with required but unreferenced functions and variables
authorGary Benson <gbenson@redhat.com>
Mon, 12 Oct 2020 09:35:23 +0000 (10:35 +0100)
committerGary Benson <gbenson@redhat.com>
Mon, 12 Oct 2020 09:35:23 +0000 (10:35 +0100)
commit71e1b6b0ac9403d7fda91890f0d2881b6d1697d6
tree85f3c5b9ab72187adc8b727393b7398ab877f16a
parent8a6e98c4a3049d7fb8ffc24b231e8cf3577fd90a
Fix testcases with required but unreferenced functions and variables

A number of testcases define variables and/or functions which are
referenced by GDB during the test, but which are not referenced from
within the test executable.  Clang correctly recognizes that these
variables and functions are unused, and optimizes them out, causing
the testcases in question to fail.  This commit adds __attribute__
((used)) in various places to prevent this.

gdb/testsuite/ChangeLog:

* gdb.base/msym-bp.c (foo): Add __attribute__ ((used)).
* gdb.base/msym-bp-2.c (foo): Likewise.
* gdb.base/msym-lang.c (foo): Likewise.
* gdb.base/msym-lang-main.c (foo): Likewise.
* gdb.base/symtab-search-order-1.c (static_global): Likewise.
* gdb.guile/scm-pretty-print.c (eval_func): Likewise.
* gdb.mi/mi-sym-info-1.c (global_f1): Likewise.
* gdb.mi/mi-sym-info-2.c (global_f1, var1, var2): Likewise.
* gdb.multi/watchpoint-multi-exit.c (globalvar): Likewise.
* gdb.python/py-as-string.c (enum_valid, enum_invalid): Likewise.
* gdb.python/py-objfile.c (static_var): Likewise.
* gdb.python/py-symbol.c (rr): Likewise.
* gdb.python/py-symbol-2.c (anon, rr): Likewise.
* gdb.mi/mi-sym-info.exp (lineno1, lineno2): Updated.
15 files changed:
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/msym-bp-2.c
gdb/testsuite/gdb.base/msym-bp.c
gdb/testsuite/gdb.base/msym-lang-main.c
gdb/testsuite/gdb.base/msym-lang.c
gdb/testsuite/gdb.base/symtab-search-order-1.c
gdb/testsuite/gdb.guile/scm-pretty-print.c
gdb/testsuite/gdb.mi/mi-sym-info-1.c
gdb/testsuite/gdb.mi/mi-sym-info-2.c
gdb/testsuite/gdb.mi/mi-sym-info.exp
gdb/testsuite/gdb.multi/watchpoint-multi-exit.c
gdb/testsuite/gdb.python/py-as-string.c
gdb/testsuite/gdb.python/py-objfile.c
gdb/testsuite/gdb.python/py-symbol-2.c
gdb/testsuite/gdb.python/py-symbol.c