diff options
author | Simon Marchi <simon.marchi@efficios.com> | 2020-03-20 11:57:49 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@efficios.com> | 2020-03-20 11:57:49 -0400 |
commit | c884cc46193c98fd0b90ce8a79c081f6a1c18cc6 (patch) | |
tree | 4881f686ec5c7cd8f44ead22588fee7cc59f78c1 /gdb/ptrace.m4 | |
parent | 1ff700c202465275d1ca3aee4dd979db36274294 (diff) | |
download | binutils-gdb-c884cc46193c98fd0b90ce8a79c081f6a1c18cc6.tar.gz |
gdb: remove HAVE_DECL_PTRACE
I stumbled on this snippet in nat/gdb_ptrace.h:
/* Some systems, in particular DEC OSF/1, Digital Unix, Compaq Tru64
or whatever it's called these days, don't provide a prototype for
ptrace. Provide one to silence compiler warnings. */
#ifndef HAVE_DECL_PTRACE
extern PTRACE_TYPE_RET ptrace();
#endif
I believe this is unnecessary today and should be removed. First, the
comment only mentions OSes we don't support (and to be honest, I had
never even heard of).
But most importantly, in C++, a declaration with empty parenthesis
declares a function that accepts no arguments, unlike in C. So if this
declaration was really used, GDB wouldn't build, since all ptrace call
sites pass some arguments. Since we haven't heard anything about this
causing some build failures since we have transitioned to C++, I
conclude that it's not used.
This patch removes it as well as the corresponding configure check.
gdb/ChangeLog:
* ptrace.m4: Don't check for ptrace declaration.
* config.in: Re-generate.
* configure: Re-generate.
* nat/gdb_ptrace.h: Don't declare ptrace if HAVE_DECL_PTRACE is
not defined.
gdbserver/ChangeLog:
* config.in: Re-generate.
* configure: Re-generate.
gdbsupport/ChangeLog:
* config.in: Re-generate.
* configure: Re-generate.
Diffstat (limited to 'gdb/ptrace.m4')
-rw-r--r-- | gdb/ptrace.m4 | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/gdb/ptrace.m4 b/gdb/ptrace.m4 index 4cd7652718a..0fcd855aa8f 100644 --- a/gdb/ptrace.m4 +++ b/gdb/ptrace.m4 @@ -31,11 +31,7 @@ gdb_ptrace_headers=' # include <unistd.h> #endif ' -# There is no point in checking if we don't have a prototype. -AC_CHECK_DECLS(ptrace, [], [ - : ${gdb_cv_func_ptrace_ret='int'} - : ${gdb_cv_func_ptrace_args='int,int,long,long'} -], $gdb_ptrace_headers) + # Check return type. Varargs (used on GNU/Linux) conflict with the # empty argument list, so check for that explicitly. AC_CACHE_CHECK([return type of ptrace], gdb_cv_func_ptrace_ret, |