On Thu, Jan 28, 2016 at 09:53:29AM -0500, Lance Richardson wrote: > ----- Original Message ----- > > On Mon, Jan 11, 2016 at 05:31:22PM -0500, Lance Richardson wrote: > > > > > > Hi, > > > > I don't understand why tha parsing part have changed so much since v1. > > I discovered as I was adding additional test cases that the NS_TYPEDEF > approach was causing sizeof to report a zero size for structures with > embedded _Static_assert(); as part of processing NS_TYPEDEF within > a structure for _Static_assert(), a unnamed field with unknown size > was being attached to the structure definition. > > So I decided to take a different approach, one that hopefully makes > more sense than handling _Static_assert() via NS_TYPEDEF. > > Apologies for not providing these details in the v2 commit log. OK, I understand. Yes, it's certainly worth to add that in the patch description. > > > +struct s2 { > > > + char c; > > > + _Static_assert(sizeof(struct s2) == 1, "struct sizeof"); > > > +}; > > > > This succeed but > > struct s2 { > > char c; > > _Static_assert(sizeof(struct s2) == 1, "struct sizeof"); > > char d; > > _Static_assert(sizeof(struct s2) == 2, "struct sizeof"); > > }; > > succeed also wich seems certainly very odd. > > > > Yes, I believe they should both fail with something like "invalid use of > sizeof on incomplete type". > > I think it's a bug. > Absolutely. > > OK, I'll post a v3 with the invalid test case removed. Thanks for looking > at this. > > Lance Good. Please also add the explanation about the parsing in the patch description. Luc -- 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