From b9fb093e7ccaee68be659d7d9711652c57e37aca Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Mon, 22 May 2023 20:15:36 +0100 Subject: [PATCH] libobjc: Add local macros to support encode generation [P109913]. r14-976-g9907413a3a6aa3 alters code to use the preferred _P-style macros rather than direct comparisons of (for example) tree codes. In the context of libobjc this does not work, since we do not include the relevant headers; the encoding implementation contains a local emulation of the target type layouts. The fix here provides relevant macros local to the use. Signed-off-by: Iain Sandoe PR libobjc/109913 libobjc/ChangeLog: * encoding.c (RECORD_OR_UNION_TYPE_P, VECTOR_TYPE_P): New. Co-authored-by: Andrew Pinski --- libobjc/encoding.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libobjc/encoding.c b/libobjc/encoding.c index 9bd261c52bd4..f1bbd6bf6eeb 100644 --- a/libobjc/encoding.c +++ b/libobjc/encoding.c @@ -67,6 +67,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define UNION_TYPE _C_UNION_B #define QUAL_UNION_TYPE _C_UNION_B #define ARRAY_TYPE _C_ARY_B +#define RECORD_OR_UNION_TYPE_P(TYPE) \ + ((TREE_CODE (TYPE) == RECORD_TYPE) \ + || (TREE_CODE (TYPE) == UNION_TYPE) \ + || (TREE_CODE (TYPE) == QUAL_UNION_TYPE)) +#define VECTOR_TYPE_P(TYPE) (TREE_CODE (TYPE) == VECTOR_TYPE) #define REAL_TYPE _C_DBL -- 2.47.2