Add comment regarding include order of <sys/ptrace.h> and <asm/ptrace.h>
authorKevin Buettner <kevinb@redhat.com>
Thu, 25 Feb 2021 22:25:49 +0000 (15:25 -0700)
committerKevin Buettner <kevinb@redhat.com>
Thu, 25 Feb 2021 22:30:32 +0000 (15:30 -0700)
I added the same comment for nat/aarch64-linux-hw-point.c yesterday.
Christian suggested adding the comment for the other file that I had
identified as including both <sys/ptrace.h> and <asm/ptrace.h>.

I searched the sources in gdb/, but found no other files which include
both of these headers.

If possible, I would prefer to see us use <sys/ptrace.h> when possible,
however, from past experience, I've found that this file does not always
contain all of the constants, etc. required by the particular source
file.

gdb/ChangeLog:

* nat/aarch64-sve-linux-ptrace.h: Add comment regarding include
order for <sys/ptrace.h> and <asm/ptrace.h>.

gdb/ChangeLog
gdb/nat/aarch64-sve-linux-ptrace.h

index 842dc0a1374b65835ccaa556178fe278b4616ce7..7e0b00cc7c6a280177ba2d069ee983923eaf826e 100644 (file)
@@ -1,3 +1,8 @@
+2021-02-24  Kevin Buettner  <kevinb@redhat.com>
+
+       * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
+       include order for <sys/ptrace.h> and <asm/ptrace.h>.
+
 2021-02-25  Simon Marchi  <simon.marchi@polymtl.ca>
 
        PR gdb/26861
index 06684023f5d182b19662d42920735dc9a855998a..be00f3061373740c4a15ce492eb3ab1b9b3a7984 100644 (file)
 
 #include <signal.h>
 #include <sys/utsname.h>
+
+/* The order in which <sys/ptrace.h> and <asm/ptrace.h> are included
+   can be important.  <sys/ptrace.h> often declares various PTRACE_*
+   enums.  <asm/ptrace.h> often defines preprocessor constants for
+   these very same symbols.  When that's the case, build errors will
+   result when <asm/ptrace.h> is included before <sys/ptrace.h>.  */
 #include <sys/ptrace.h>
 #include <asm/ptrace.h>