> On Dec 5, 2022, at 10:16 AM, Richard Biener <rguent...@suse.de> wrote:
> 
> On Fri, 2 Dec 2022, Qing Zhao wrote:
> 
>> 
>> 
>>> On Dec 2, 2022, at 2:20 AM, Richard Biener <rguent...@suse.de> wrote:
>>> 
>>> On Fri, 2 Dec 2022, Richard Biener wrote:
>>> 
>>>> On Thu, 1 Dec 2022, Siddhesh Poyarekar wrote:
>>>> 
>>>>> On 2022-12-01 11:42, Kees Cook wrote:
>>>>>> On Wed, Nov 30, 2022 at 02:25:56PM +0000, Qing Zhao wrote:
>>>>>>> '-Wstrict-flex-arrays'
>>>>>>>     Warn about inproper usages of flexible array members according to
>>>>>>>     the LEVEL of the 'strict_flex_array (LEVEL)' attribute attached to
>>>>>>>     the trailing array field of a structure if it's available,
>>>>>>>     otherwise according to the LEVEL of the option
>>>>>>>     '-fstrict-flex-arrays=LEVEL'.
>>>>>>> 
>>>>>>>     This option is effective only when LEVEL is bigger than 0.
>>>>>>>     Otherwise, it will be ignored with a warning.
>>>>>>> 
>>>>>>>     when LEVEL=1, warnings will be issued for a trailing array
>>>>>>>     reference of a structure that have 2 or more elements if the
>>>>>>>     trailing array is referenced as a flexible array member.
>>>>>>> 
>>>>>>>     when LEVEL=2, in addition to LEVEL=1, additional warnings will be
>>>>>>>     issued for a trailing one-element array reference of a structure if
>>>>>>>     the array is referenced as a flexible array member.
>>>>>>> 
>>>>>>>     when LEVEL=3, in addition to LEVEL=2, additional warnings will be
>>>>>>>     issued for a trailing zero-length array reference of a structure if
>>>>>>>     the array is referenced as a flexible array member.
>>>>>>> 
>>>>>>> At the same time, -Warray-bounds is updated:
>>>>>> 
>>>>>> Why is there both -Wstrict-flex-arrays and -Warray-bounds? I thought
>>>>>> only the latter was going to exist?
>>>> 
>>>> Sorry for appearantly not being clear - I was requesting 
>>>> -Wstrict-flex-arrays to be dropped and instead adjusting -Warray-bounds
>>>> to adhere to -fstrict-flex-arrays in both =1 and =2 where then =2
>>>> would only add the intermediate pointer results verification.
>>>> 
>>>> I think that's reasonable if documented since the default behavior
>>>> with -Wall will not change then unless the -fstrict-flex-arrays
>>>> default is altered.
>>> 
>>> Btw, your patch seems to implement the above plus adds 
>>> -Wstrict-flex-arrays.  It seems it could be split into two, doing
>>> the -Warray-bounds adjustment as first and the -Wstrict-flex-arrays 
>>> addition as second.
>> 
>> Yes, implementation should be very easy to be adjusted to drop the new 
>> -Wstrict-flex-arrays option.
>> But I still feel the new -Wstrict-flex-arrays option is good to add.
> 
> Can you split the patch and re-post?  I'll quickly approve the first
> part and will think harder on the second.

Okay, I will do that.

thanks.

Qing
> 
> Thanks,
> Richard.
> 
>> Qing
>>> We do all seem to agree on the first so it's easy
>>> to go forward with that?
>>> 
>>> Thanks,
>>> Richard.
>> 
>> 
> 
> -- 
> Richard Biener <rguent...@suse.de>
> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg,
> Germany; GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman;
> HRB 36809 (AG Nuernberg)

Reply via email to