[oe] [meta-java][PATCH] icedtea7-native: Fix compilation error due to format-overflow
Richard Leitner
richard.leitner at skidata.com
Mon Dec 30 09:04:25 UTC 2019
Hi,
On 30/12/2019 09:11, Hussin, Mohamad Noor Alim wrote:
> Hi Richard,
>
> I am using gcc 8.3.0. I get this error while compiling the source code hotspot/src/share/vm/adlc/output_c.cpp which related to sprintf.
> See the error log below.
>
> /workspace/poky/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/hotspot/src/share/vm/adlc/output_c.cpp:1239:34: error: ‘_idx’ directive writing 4 bytes into a region of size between 2 and 12 [-Werror=format-overflow=]
> sprintf(left_reg_index,",inst%d_idx%d", left_index, left_op_index);
> ^~~~~~~~~~~~~~~
> /workspace/poky/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/hotspot/src/share/vm/adlc/output_c.cpp:1239:34: note: directive argument in the range [-2147483648, 9999]
> In file included from /usr/include/stdio.h:873,
> from /workspace/poky/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/hotspot/src/share/vm/adlc/adlc.hpp:33,
> from /workspace/poky/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/hotspot/src/share/vm/adlc/output_c.cpp:27:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:36:34: note: ‘__builtin___sprintf_chk’ output between 12 and 32 bytes into a destination of size 18
> return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
> ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> __bos (__s), __fmt, __va_arg_pack ());
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /workspace/poky/build/tmp/work/x86_64-linux/icedtea7-native/2.1.3-r1.0/icedtea-2.1.3/build/openjdk-boot/hotspot/src/share/vm/adlc/output_c.cpp:1252:37: error: ‘_idx’ directive writing 4 bytes into a region of size between 2 and 12 [-Werror=format-overflow=]
> sprintf(right_reg_index,",inst%d_idx%d", right_index, right_op_index);
> ^~~~~~~~~~~~~~~
Strange, I'm unable to reproduce that problem...
Nonetheless I'd prefer a "real" fix of the error instead of Wno-error if
that's doable for you?
>
> By the way, this patch file "recipes-core/icedtea/openjdk-7-03b147/icedtea-hotspot-handle-gcc7-format-overflow.patch" is set to apply=no
> in recipe file https://git.yoctoproject.org/cgit/cgit.cgi/meta-java/tree/recipes-core/icedtea/openjdk-7-release-03b147.inc#n92.
> So, that patch file will not apply during do_patch.
It is applied using DISTRIBUTION_PATCHES in
https://git.yoctoproject.org/cgit/cgit.cgi/meta-java/tree/recipes-core/icedtea/openjdk-7-release-03b147.inc#n115
regards;rl
>
> Regards,
> Alim Hussin
>
> -----Original Message-----
> From: Richard Leitner <richard.leitner at skidata.com>
> Sent: Friday, December 27, 2019 7:00 PM
> To: Hussin, Mohamad Noor Alim <mohamad.noor.alim.hussin at intel.com>; openembedded-devel at lists.openembedded.org
> Subject: Re: [oe] [meta-java][PATCH] icedtea7-native: Fix compilation error due to format-overflow
>
> Hi,
>
> On 05/12/2019 03:43, mohamad.noor.alim.hussin at intel.com wrote:
>> From: Mohamad Noor Alim Hussin <mohamad.noor.alim.hussin at intel.com>
>>
>> Getting a compilaton error due to format-overflow. Workaround to
>> suppress the error message by ignore the warning.
>
> Same as for jdk 8, AFAIK these warnings should be fixed by recipes-core/icedtea/openjdk-7-03b147/icedtea-hotspot-handle-gcc7-format-overflow.patch
>
> Where/why do you get them?
>
> regards;Richard.L
>
>>
>> Signed-off-by: Mohamad Noor Alim Hussin
>> <mohamad.noor.alim.hussin at intel.com>
>> ---
>> recipes-core/icedtea/icedtea7-native.inc | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/recipes-core/icedtea/icedtea7-native.inc
>> b/recipes-core/icedtea/icedtea7-native.inc
>> index b578cb2..0329d71 100644
>> --- a/recipes-core/icedtea/icedtea7-native.inc
>> +++ b/recipes-core/icedtea/icedtea7-native.inc
>> @@ -26,7 +26,7 @@ CXXFLAGS_append = " -fno-tree-dse"
>> CXX_append = " -std=gnu++98"
>>
>> # WORKAROUND: ignore errors from new compilers -CFLAGS_append = "
>> -Wno-error=stringop-overflow -Wno-error=return-type"
>> +CFLAGS_append = " -Wno-error=stringop-overflow -Wno-error=return-type -Wno-error=format-overflow"
>>
>> inherit native java autotools pkgconfig
>> inherit openjdk-build-helper
>>
More information about the Openembedded-devel
mailing list