public inbox for gdb-cvs@sourceware.org help / color / mirror / Atom feed
From: Simon Marchi <simark@sourceware.org> To: gdb-cvs@sourceware.org Subject: [binutils-gdb] gdbsupport: add type definitions for pid, lwp and tid Date: Thu, 2 Feb 2023 15:08:42 +0000 (GMT) [thread overview] Message-ID: <20230202150842.3A2553858C60@sourceware.org> (raw) https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7b065306be39502cd2e6b60696280ac720c67e66 commit 7b065306be39502cd2e6b60696280ac720c67e66 Author: Simon Marchi <simon.marchi@efficios.com> Date: Fri Sep 23 11:55:32 2022 -0400 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> Diff: --- gdbsupport/ptid.h | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/gdbsupport/ptid.h b/gdbsupport/ptid.h index 365e11c6db5..aa296b83181 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. */
reply other threads:[~2023-02-02 15:08 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230202150842.3A2553858C60@sourceware.org \ --to=simark@sourceware.org \ --cc=gdb-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).