diff options
author | Simon Marchi <simon.marchi@efficios.com> | 2022-09-23 11:55:32 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@polymtl.ca> | 2023-02-02 10:02:34 -0500 |
commit | 7b065306be39502cd2e6b60696280ac720c67e66 (patch) | |
tree | e93a12e6bc8620f3f1e4368c53478437abba31c8 /gdbsupport | |
parent | b82d4ec99e3347b62a16cf5456628a37a128a99b (diff) | |
download | gdb-7b065306be39502cd2e6b60696280ac720c67e66.zip gdb-7b065306be39502cd2e6b60696280ac720c67e66.tar.gz gdb-7b065306be39502cd2e6b60696280ac720c67e66.tar.bz2 |
gdbsupport: add type definitions for pid, lwp and tid
A following patch will want to declare variables of the same type as
some ptid_t components. To make that easy (and avoid harcoding those
types everywhere), define some type definitions in the ptid_t struct for
each of them. Use them throughout ptid.h.
I initially used pid_t, lwp_t and tid_t, but there is the risk of some
system defining the pid_t type using a macro instead of a typedef, which
would break things. So, use the _type suffix instead.
Change-Id: I820b0bea9dafcb4914f1c9ba4bb96b5c666c8dec
Approved-By: Andrew Burgess <aburgess@redhat.com>
Diffstat (limited to 'gdbsupport')
-rw-r--r-- | gdbsupport/ptid.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/gdbsupport/ptid.h b/gdbsupport/ptid.h index 365e11c..aa296b8 100644 --- a/gdbsupport/ptid.h +++ b/gdbsupport/ptid.h @@ -39,6 +39,10 @@ class ptid_t { public: + using pid_type = int; + using lwp_type = long; + using tid_type = ULONGEST; + /* Must have a trivial defaulted default constructor so that the type remains POD. */ ptid_t () noexcept = default; @@ -48,13 +52,13 @@ public: A ptid with only a PID (LWP and TID equal to zero) is usually used to represent a whole process, including all its lwps/threads. */ - explicit constexpr ptid_t (int pid, long lwp = 0, ULONGEST tid = 0) + explicit constexpr ptid_t (pid_type pid, lwp_type lwp = 0, tid_type tid = 0) : m_pid (pid), m_lwp (lwp), m_tid (tid) {} /* Fetch the pid (process id) component from the ptid. */ - constexpr int pid () const + constexpr pid_type pid () const { return m_pid; } /* Return true if the ptid's lwp member is non-zero. */ @@ -64,7 +68,7 @@ public: /* Fetch the lwp (lightweight process) component from the ptid. */ - constexpr long lwp () const + constexpr lwp_type lwp () const { return m_lwp; } /* Return true if the ptid's tid member is non-zero. */ @@ -74,7 +78,7 @@ public: /* Fetch the tid (thread id) component from a ptid. */ - constexpr ULONGEST tid () const + constexpr tid_type tid () const { return m_tid; } /* Return true if the ptid represents a whole process, including all its @@ -144,13 +148,13 @@ public: private: /* Process id. */ - int m_pid; + pid_type m_pid; /* Lightweight process id. */ - long m_lwp; + lwp_type m_lwp; /* Thread id. */ - ULONGEST m_tid; + tid_type m_tid; }; /* Functor to hash a ptid. */ |