From: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
To: linux-sparse@vger.kernel.org
Cc: Chris Li <sparse@chrisli.org>,
Luc Van Oostenryck <luc.vanoostenryck@gmail.com>,
Oleg Nesterov <oleg@redhat.com>
Subject: [PATCH] dissect: use built_in_ident() instead of MK_IDENT()
Date: Mon, 19 Jun 2017 23:14:54 +0200 [thread overview]
Message-ID: <20170619211454.45244-1-luc.vanoostenryck@gmail.com> (raw)
The motivation for this patch was to allow sparse to be
compiled with clang which doesn't like what is done
on VLAs in the MK_IDENT() macro.
But also, I can't see any justification for not using the
real thing to create identifiers: built_in_ident().
CC: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
---
dissect.h | 13 -------------
test-dissect.c | 6 +++---
2 files changed, 3 insertions(+), 16 deletions(-)
diff --git a/dissect.h b/dissect.h
index 3b72b8988..5ac1f4d40 100644
--- a/dissect.h
+++ b/dissect.h
@@ -25,16 +25,3 @@ struct reporter
};
extern void dissect(struct symbol_list *, struct reporter *);
-
-#define MK_IDENT(s) ({ \
- static struct { \
- struct ident ident; \
- char __[sizeof(s)]; \
- } ident = {{ \
- .len = sizeof(s)-1, \
- .name = s, \
- }}; \
- &ident.ident; \
-})
-
-#endif
diff --git a/test-dissect.c b/test-dissect.c
index a2548b7f2..862318f81 100644
--- a/test-dissect.c
+++ b/test-dissect.c
@@ -47,7 +47,7 @@ static void r_symbol(unsigned mode, struct position *pos, struct symbol *sym)
print_usage(pos, sym, mode);
if (!sym->ident)
- sym->ident = MK_IDENT("__asm__");
+ sym->ident = built_in_ident("__asm__");
printf("%-32.*s %s\n",
sym->ident->len, sym->ident->name,
@@ -60,10 +60,10 @@ static void r_member(unsigned mode, struct position *pos, struct symbol *sym, st
print_usage(pos, sym, mode);
- ni = MK_IDENT("?");
+ ni = built_in_ident("?");
si = sym->ident ?: ni;
/* mem == NULL means entire struct accessed */
- mi = mem ? (mem->ident ?: ni) : MK_IDENT("*");
+ mi = mem ? (mem->ident ?: ni) : built_in_ident("*");
printf("%.*s.%-*.*s %s\n",
si->len, si->name,
--
2.13.0
next reply other threads:[~2017-06-19 21:14 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-19 21:14 Luc Van Oostenryck [this message]
2017-06-19 22:35 ` [PATCH] dissect: use built_in_ident() instead of MK_IDENT() Ramsay Jones
2017-06-19 22:42 ` Luc Van Oostenryck
2017-06-20 11:17 ` Oleg Nesterov
2017-06-20 12:53 ` Luc Van Oostenryck
2017-06-20 16:07 ` Oleg Nesterov
2017-06-20 16:39 ` Luc Van Oostenryck
2017-06-20 16:56 ` Oleg Nesterov
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=20170619211454.45244-1-luc.vanoostenryck@gmail.com \
--to=luc.vanoostenryck@gmail.com \
--cc=linux-sparse@vger.kernel.org \
--cc=oleg@redhat.com \
--cc=sparse@chrisli.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 NNTP newsgroup(s).