[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-sparse
Subject: Re: [PATCH v2] sparse: add support for static assert
From: Luc Van Oostenryck <luc.vanoostenryck () gmail ! com>
Date: 2016-01-29 16:15:56
Message-ID: 20160129161554.GA730 () macbook ! lan
[Download RAW message or body]
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@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic