[gdb/testsuite] Fix gdb.threads/access-mem-running-thread-exit.exp with clang

Message ID 20240410101943.2981-1-tdevries@suse.de
State Committed
Headers
Series [gdb/testsuite] Fix gdb.threads/access-mem-running-thread-exit.exp with clang |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_gdb_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gdb_check--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_gdb_check--master-arm warning Patch is already merged

Commit Message

Tom de Vries April 10, 2024, 10:19 a.m. UTC
  When running test-case gdb.threads/access-mem-running-thread-exit.exp with
clang, we run into:
...
(gdb) print global_var = 555^M
No symbol "global_var" in current context.^M
(gdb) FAIL: gdb.threads/access-mem-running-thread-exit.exp: all-stop: \
  access mem (write to global_var, inf=2, iter=1)
...

The problem is that clang removes the unused variable.

Fix this in the same way as done in commit b4f767131f7
("Fix gdb.base/align-*.exp and Clang + LTO and AIX GCC"), by incrementing the
variable.

Tested on x86_64-linux with gcc and clang.
---
 gdb/testsuite/gdb.threads/access-mem-running-thread-exit.c | 2 ++
 1 file changed, 2 insertions(+)


base-commit: bdefc073061ff9e9334a1306e9c70745104dc57f
  

Comments

Tom Tromey April 10, 2024, 4 p.m. UTC | #1
>>>>> "Tom" == Tom de Vries <tdevries@suse.de> writes:

Tom> When running test-case gdb.threads/access-mem-running-thread-exit.exp with
Tom> clang, we run into:
Tom> ...
Tom> (gdb) print global_var = 555^M
Tom> No symbol "global_var" in current context.^M
Tom> (gdb) FAIL: gdb.threads/access-mem-running-thread-exit.exp: all-stop: \
Tom>   access mem (write to global_var, inf=2, iter=1)
Tom> ...

Tom> The problem is that clang removes the unused variable.

Tom> Fix this in the same way as done in commit b4f767131f7
Tom> ("Fix gdb.base/align-*.exp and Clang + LTO and AIX GCC"), by incrementing the
Tom> variable.

Tom> Tested on x86_64-linux with gcc and clang.

Seems fine to me.
Approved-By: Tom Tromey <tom@tromey.com>

Tom
  

Patch

diff --git a/gdb/testsuite/gdb.threads/access-mem-running-thread-exit.c b/gdb/testsuite/gdb.threads/access-mem-running-thread-exit.c
index 5902542ee5b..af05b13c763 100644
--- a/gdb/testsuite/gdb.threads/access-mem-running-thread-exit.c
+++ b/gdb/testsuite/gdb.threads/access-mem-running-thread-exit.c
@@ -102,6 +102,8 @@  main (void)
 {
   int i;
 
+  global_var++;
+
   for (i = 0; i < 4; i++)
     {
       struct thread_arg *p;