Pass -Wno-deprecated-register for gdb.cp that use "register"
[deliverable/binutils-gdb.git] / gdb / inflow.h
index 4077dfc96f9ba6ffb1eb82aa365c7e31685798dc..fe8c005be0db2500551e49a5b8606546c914d566 100644 (file)
@@ -1,6 +1,6 @@
 /* Low level interface to ptrace, for GDB when running under Unix.
 
-   Copyright (C) 2003-2015 Free Software Foundation, Inc.
+   Copyright (C) 2003-2020 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 #ifndef INFLOW_H
 #define INFLOW_H
 
-#include "terminal.h"          /* For HAVE_TERMIOS et.al.  */
+#include <unistd.h>
+#include <signal.h>
+#include "gdbsupport/job-control.h"
 
-#ifdef HAVE_TERMIOS
-# define PROCESS_GROUP_TYPE pid_t
-#elif defined (HAVE_TERMIO) || defined (HAVE_SGTTY)
-# define PROCESS_GROUP_TYPE int
+/* RAII class used to ignore SIGTTOU in a scope.  */
+
+class scoped_ignore_sigttou
+{
+public:
+  scoped_ignore_sigttou ()
+  {
+#ifdef SIGTTOU
+    if (job_control)
+      m_osigttou = signal (SIGTTOU, SIG_IGN);
+#endif
+  }
+
+  ~scoped_ignore_sigttou ()
+  {
+#ifdef SIGTTOU
+    if (job_control)
+      signal (SIGTTOU, m_osigttou);
 #endif
+  }
+
+  DISABLE_COPY_AND_ASSIGN (scoped_ignore_sigttou);
 
-#ifdef PROCESS_GROUP_TYPE
-/* Process group of the current inferior.  */
-extern PROCESS_GROUP_TYPE inferior_process_group (void);
+private:
+#ifdef SIGTTOU
+  sighandler_t m_osigttou = NULL;
 #endif
+};
 
 #endif /* inflow.h */
This page took 0.024046 seconds and 4 git commands to generate.