aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2021-09-08 08:58:39 +0200
committerTom de Vries <tdevries@suse.de>2021-09-08 08:58:39 +0200
commit42f46152849a2d4bd06a87c2dc795de1f7fc1af7 (patch)
tree3003de1c1ed86c0bc907f099c06a077933ee1669 /gdb
parent99aedb6243a8ab8b434ec321de0fc3fbb2b6eebf (diff)
downloadgdb-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.c23
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);
}