Starting glibc 2.30, unistd.h declares gettid (for _GNU_SOURCE).
This clashes with a static gettid in test source
clone-new-thread-event.c:
...
gdb compile failed, gdb.threads/clone-new-thread-event.c:46:1: error: \
static declaration of 'gettid' follows non-static declaration
46 | gettid (void)
| ^~~~~~
In file included from /usr/include/unistd.h:1170,
from gdb.threads/clone-new-thread-event.c:27:
/usr/include/bits/unistd_ext.h:34:16: note: previous declaration of 'gettid' \
was here
34 | extern __pid_t gettid (void) __THROW;
| ^~~~~~
...
Fix this by renaming the static gettid to local_gettid.
Tested on x86_64-linux.
gdb/testsuite/ChangeLog:
2020-07-14 Tom de Vries <tdevries@suse.de>
* gdb.threads/clone-new-thread-event.c (gettid): Rename to ...
(local_gettid): ... this.
(fn): Update.
+2020-07-14 Tom de Vries <tdevries@suse.de>
+
+ * gdb.threads/clone-new-thread-event.c (gettid): Rename to ...
+ (local_gettid): ... this.
+ (fn): Update.
+
2020-07-13 Sandra Loosemore <sandra@codesourcery.com>
* gdb.base/info_sources.exp: Skip directory match tests on
}
static pid_t
-gettid (void)
+local_gettid (void)
{
return syscall (__NR_gettid);
}
static int
fn (void *unused)
{
- tkill (gettid (), SIGUSR1);
+ tkill (local_gettid (), SIGUSR1);
return 0;
}