On 19/06/17 22:14, Luc Van Oostenryck wrote: > 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@xxxxxxxxxx> > Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> > --- > 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 Hmm, does this compile?; you seem to have removed an #endif, leaving an unbalanced '#ifndef DISSECT_H'. ATB, Ramsay Jones > 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, > -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html