From: Simon Marchi <simon.marchi@efficios.com>
To: gdb-patches@sourceware.org
Cc: Simon Marchi <simon.marchi@efficios.com>
Subject: [PATCH 5/7] gdb: move RequireLongest to gdbsupport/traits.h
Date: Mon, 22 Apr 2024 16:10:15 -0400 [thread overview]
Message-ID: <20240422201157.46375-6-simon.marchi@efficios.com> (raw)
In-Reply-To: <20240422201157.46375-1-simon.marchi@efficios.com>
Move it out of defs.h.
Change-Id: Ie1743d41a57f81667650048563e66073c72230cf
---
gdb/defs.h | 4 ----
| 2 ++
gdb/regcache.h | 1 +
gdbsupport/traits.h | 4 ++++
4 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/gdb/defs.h b/gdb/defs.h
index 5da8ce728153..535ca6716732 100644
--- a/gdb/defs.h
+++ b/gdb/defs.h
@@ -63,10 +63,6 @@
#include "gdbsupport/enum-flags.h"
#include "gdbsupport/array-view.h"
-template<typename T>
-using RequireLongest = gdb::Requires<gdb::Or<std::is_same<T, LONGEST>,
- std::is_same<T, ULONGEST>>>;
-
/* Just in case they're not defined in stdio.h. */
#ifndef SEEK_SET
--git a/gdb/extract-store-integer.h b/gdb/extract-store-integer.h
index 1ba5f82da9a7..fd195dc64362 100644
--- a/gdb/extract-store-integer.h
+++ b/gdb/extract-store-integer.h
@@ -18,6 +18,8 @@
#ifndef GDB_EXTRACT_STORE_INTEGER_H
#define GDB_EXTRACT_STORE_INTEGER_H
+#include "gdbsupport/traits.h"
+
template<typename T, typename = RequireLongest<T>>
T extract_integer (gdb::array_view<const gdb_byte>, enum bfd_endian byte_order);
diff --git a/gdb/regcache.h b/gdb/regcache.h
index 1d049fe7ae8d..2f4b7d94c693 100644
--- a/gdb/regcache.h
+++ b/gdb/regcache.h
@@ -23,6 +23,7 @@
#include "gdbsupport/array-view.h"
#include "gdbsupport/common-regcache.h"
#include "gdbsupport/function-view.h"
+#include "gdbsupport/traits.h"
struct regcache;
struct regset;
diff --git a/gdbsupport/traits.h b/gdbsupport/traits.h
index 92fe59f34af7..85cbc94bc6c9 100644
--- a/gdbsupport/traits.h
+++ b/gdbsupport/traits.h
@@ -143,4 +143,8 @@ template<typename Condition>
using Requires = typename std::enable_if<Condition::value, void>::type;
}
+template<typename T>
+using RequireLongest = gdb::Requires<gdb::Or<std::is_same<T, LONGEST>,
+ std::is_same<T, ULONGEST>>>;
+
#endif /* COMMON_TRAITS_H */
--
2.44.0
next prev parent reply other threads:[~2024-04-22 20:12 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-22 20:10 [PATCH 0/7] First cleanup of defs.h Simon Marchi
2024-04-22 20:10 ` [PATCH 1/7] gdb: move two declarations out " Simon Marchi
2024-04-22 20:10 ` [PATCH 2/7] gdb: move `enum compile_i_scope_types` to compile/compile.h Simon Marchi
2024-04-22 20:10 ` [PATCH 3/7] gdb: remove extract_long_unsigned_integer Simon Marchi
2024-04-22 20:10 ` [PATCH 4/7] gdb: move store/extract integer functions to extract-store-integer.{c,h} Simon Marchi
2024-04-23 18:03 ` [PATCH 4/7] gdb: move store/extract integer functions to extract-store-integer.{c, h} Pedro Alves
2024-04-23 19:10 ` Simon Marchi
2024-04-23 19:40 ` Pedro Alves
2024-04-22 20:10 ` Simon Marchi [this message]
2024-04-22 20:10 ` [PATCH 6/7] gdb: don't include hashtab.h in defs.h Simon Marchi
2024-04-22 20:10 ` [PATCH 7/7] gdb: don't include gdbsupport/array-view.h " Simon Marchi
2024-04-22 22:55 ` [PATCH 0/7] First cleanup of defs.h John Baldwin
2024-04-23 1:38 ` Simon Marchi
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=20240422201157.46375-6-simon.marchi@efficios.com \
--to=simon.marchi@efficios.com \
--cc=gdb-patches@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: link
Be 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).