Index: gdb-6.3/gdb/linux-nat.c
===================================================================
--- gdb-6.3.orig/gdb/linux-nat.c	2004-11-14 00:36:41.000000000 -0500
+++ gdb-6.3/gdb/linux-nat.c	2004-11-15 11:51:43.954161476 -0500
@@ -69,7 +69,7 @@
 #define PTRACE_EVENT_VFORK	2
 #define PTRACE_EVENT_CLONE	3
 #define PTRACE_EVENT_EXEC	4
-#define PTRACE_EVENT_VFORKDONE	5
+#define PTRACE_EVENT_VFORK_DONE	5
 #define PTRACE_EVENT_EXIT	6
 
 #endif /* PTRACE_EVENT_FORK */
@@ -362,7 +362,7 @@ child_follow_fork (int follow_child)
 
 	      ptrace (PTRACE_CONT, parent_pid, 0, 0);
 	      waitpid (parent_pid, &status, __WALL);
-	      if ((status >> 16) != PTRACE_EVENT_VFORKDONE)
+	      if ((status >> 16) != PTRACE_EVENT_VFORK_DONE)
 		warning ("Unexpected waitpid result %06x when waiting for "
 			 "vfork-done", status);
 	    }
@@ -434,7 +434,7 @@ child_follow_fork (int follow_child)
 	 generally not encounter vfork (vfork is defined to fork
 	 in libpthread.so).
 
-	 The holding part is very easy if we have VFORKDONE events;
+	 The holding part is very easy if we have VFORK_DONE events;
 	 but keeping track of both processes is beyond GDB at the
 	 moment.  So we don't expose the parent to the rest of GDB.
 	 Instead we quietly hold onto it until such time as we can
