[PATCH] Get rid of array-bounds warning in __kernel_rem_pio2[f] with gcc 6.1 -O3.

Stefan Liebler stli@linux.vnet.ibm.com
Mon Jul 25 16:50:00 GMT 2016


On 07/20/2016 06:33 PM, Joseph Myers wrote:
> On Thu, 7 Jul 2016, Stefan Liebler wrote:
>
>> Hi,
>>
>> while testing, I've got the following werror on s390x when build with gcc 6.1
>> (or current gcc head) and -O3:
>> ../sysdeps/ieee754/dbl-64/k_rem_pio2.c: In function ‘__kernel_rem_pio2’:
>> ../sysdeps/ieee754/dbl-64/k_rem_pio2.c:254:18: error: array subscript is below
>> array bounds [-Werror=array-bounds]
>>      for (k = 1; iq[jk - k] == 0; k++)
>>                  ~~^~~~~~~~
>>
>> I get the same error with sysdeps/ieee754/flt-32/k_rem_pio2f.c.
>>
>> Does anybody else get this warning on another architecture, too?
>>
>> This patch adds a check so that the index is always >= 0.
>
> Such an unnecessary check is not how we deal with bogus warnings.
> Rather, use the DIAG_*_NEEDS_COMMENT macros from include/libc-internal.h,
> with a detailed comment explaining what the warning is and why it is a
> false positive.
>

Sorry for the delay. Here is the updated patch with DIAG_* macros.
Is this okay?

Bye Stefan

ChangeLog:


ChangeLog:

	* sysdeps/ieee754/dbl-64/k_rem_pio2.c (__kernel_rem_pio2):
	Use DIAG_*_NEEDS_COMMENT macro to get rid of array-bounds
	warning.
	* sysdeps/ieee754/flt-32/k_rem_pio2f.c (__kernel_rem_pio2f):
	Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 20160725_k_rem_pio2_warraybounds.patch
Type: text/x-patch
Size: 2412 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20160725/7156a0b4/attachment.bin>


More information about the Libc-alpha mailing list