diff options
author | Tom de Vries <tdevries@suse.de> | 2021-09-08 08:58:39 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2021-09-08 08:58:39 +0200 |
commit | 42f46152849a2d4bd06a87c2dc795de1f7fc1af7 (patch) | |
tree | 3003de1c1ed86c0bc907f099c06a077933ee1669 /gdb | |
parent | 99aedb6243a8ab8b434ec321de0fc3fbb2b6eebf (diff) | |
download | gdb-42f46152849a2d4bd06a87c2dc795de1f7fc1af7.zip gdb-42f46152849a2d4bd06a87c2dc795de1f7fc1af7.tar.gz gdb-42f46152849a2d4bd06a87c2dc795de1f7fc1af7.tar.bz2 |
[gdb/build] Fix build with undefined CXX_STD_THREAD
When building gdb on openSUSE Leap 42.3, we trigger the case that
CXX_STD_THREAD is undefined, and run into:
...
gdb/maint.c: In function 'void maintenance_show_worker_threads \
(ui_file*, int, cmd_list_element*, const char*)':
gdb/maint.c:877:14: error: 'gdb::thread_pool' has not been declared
gdb::thread_pool::g_thread_pool->thread_count ());
^
Makefile:1647: recipe for target 'maint.o' failed
make[1]: *** [maint.o] Error 1
...
Fix this by handling the undefined CXX_STD_THREAD case in
maintenance_show_worker_threads, such that we get:
...
$ gdb -q -batch -ex "maint show worker-thread"
The number of worker threads GDB can use is 0.
...
Tested on x86_64-linux.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=28312
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/maint.c | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/gdb/maint.c b/gdb/maint.c index cbd7d4e..8f8bdc8 100644 --- a/gdb/maint.c +++ b/gdb/maint.c @@ -871,14 +871,23 @@ maintenance_show_worker_threads (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) { +#if CXX_STD_THREAD if (n_worker_threads == -1) - fprintf_filtered (file, _("The number of worker threads GDB " - "can use is unlimited (currently %zu).\n"), - gdb::thread_pool::g_thread_pool->thread_count ()); - else - fprintf_filtered (file, _("The number of worker threads GDB " - "can use is %d.\n"), - n_worker_threads); + { + fprintf_filtered (file, _("The number of worker threads GDB " + "can use is unlimited (currently %zu).\n"), + gdb::thread_pool::g_thread_pool->thread_count ()); + return; + } +#endif + + int report_threads = 0; +#if CXX_STD_THREAD + report_threads = n_worker_threads; +#endif + fprintf_filtered (file, _("The number of worker threads GDB " + "can use is %d.\n"), + report_threads); } |