* "krb" fails to build, suspect GCC bug @ 2015-09-05 12:39 Mike Looijmans 2015-10-27 18:21 ` Martin Jansa 0 siblings, 1 reply; 6+ messages in thread From: Mike Looijmans @ 2015-09-05 12:39 UTC (permalink / raw) To: openembedded-devel I got this weird build failure from the "krb" package: | make[3]: Entering directory '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare -Werror=uninitialized -Werror=pointer-arith -Werror=declaration-after-statement -Werror-implicit-function-declaration -pthread -c cc_file.c -o cc_file.so.o && mv -f cc_file.so.o cc_file.so | cc_file.c: In function 'fcc_next_cred': | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this function [-Werror=maybe-uninitialized] | ret = load_data(context, id, maxsize, buf); | ^ | cc_file.c:1091:12: note: 'maxsize' was declared here | size_t maxsize; | ^ | cc1: some warnings being treated as errors Looking at the source, this doesn't make any sense at all. The declaration of the variable isn't even in the same method body. And the line it complains about is about the fifth time it passes that variable to another method. And working around it by initializing maxsize=0 just makes the compiler choke on a similar situation elsewhere: | packet.c:50:67: error: 'id' may be used uninitialized in this function I suspect the problem here is GCC and not the krb code. Anyone seen this? -- Mike Looijmans ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: "krb" fails to build, suspect GCC bug 2015-09-05 12:39 "krb" fails to build, suspect GCC bug Mike Looijmans @ 2015-10-27 18:21 ` Martin Jansa 2015-10-27 18:26 ` Khem Raj 0 siblings, 1 reply; 6+ messages in thread From: Martin Jansa @ 2015-10-27 18:21 UTC (permalink / raw) To: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 2281 bytes --] On Sat, Sep 05, 2015 at 02:39:14PM +0200, Mike Looijmans wrote: > I got this weird build failure from the "krb" package: > > | make[3]: Entering directory > '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' > | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 > --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED > -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. > -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g > -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 > -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align > -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow > -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes > -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function > -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas > -Wsign-compare -Werror=uninitialized -Werror=pointer-arith > -Werror=declaration-after-statement > -Werror-implicit-function-declaration -pthread -c cc_file.c -o > cc_file.so.o && mv -f cc_file.so.o cc_file.so > | cc_file.c: In function 'fcc_next_cred': > | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this > function [-Werror=maybe-uninitialized] > | ret = load_data(context, id, maxsize, buf); > | ^ > | cc_file.c:1091:12: note: 'maxsize' was declared here > | size_t maxsize; > | ^ > | cc1: some warnings being treated as errors > > Looking at the source, this doesn't make any sense at all. The > declaration of the variable isn't even in the same method body. And the > line it complains about is about the fifth time it passes that variable > to another method. > > And working around it by initializing maxsize=0 just makes the compiler > choke on a similar situation elsewhere: > | packet.c:50:67: error: 'id' may be used uninitialized in this function > > > I suspect the problem here is GCC and not the krb code. Anyone seen this? I've seen it today in my world builds, It seems to fail only when building with -Os. I've seen similar issue in mdadm, also only with -Os. -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 188 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: "krb" fails to build, suspect GCC bug 2015-10-27 18:21 ` Martin Jansa @ 2015-10-27 18:26 ` Khem Raj 2015-10-27 19:57 ` Martin Jansa 0 siblings, 1 reply; 6+ messages in thread From: Khem Raj @ 2015-10-27 18:26 UTC (permalink / raw) To: openembeded-devel On Tue, Oct 27, 2015 at 11:21 AM, Martin Jansa <martin.jansa@gmail.com> wrote: > On Sat, Sep 05, 2015 at 02:39:14PM +0200, Mike Looijmans wrote: >> I got this weird build failure from the "krb" package: >> >> | make[3]: Entering directory >> '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' >> | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 >> --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED >> -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. >> -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g >> -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 >> -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align >> -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow >> -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes >> -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function >> -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas >> -Wsign-compare -Werror=uninitialized -Werror=pointer-arith >> -Werror=declaration-after-statement >> -Werror-implicit-function-declaration -pthread -c cc_file.c -o >> cc_file.so.o && mv -f cc_file.so.o cc_file.so >> | cc_file.c: In function 'fcc_next_cred': >> | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this >> function [-Werror=maybe-uninitialized] >> | ret = load_data(context, id, maxsize, buf); >> | ^ >> | cc_file.c:1091:12: note: 'maxsize' was declared here >> | size_t maxsize; >> | ^ >> | cc1: some warnings being treated as errors >> >> Looking at the source, this doesn't make any sense at all. The >> declaration of the variable isn't even in the same method body. And the >> line it complains about is about the fifth time it passes that variable >> to another method. >> >> And working around it by initializing maxsize=0 just makes the compiler >> choke on a similar situation elsewhere: >> | packet.c:50:67: error: 'id' may be used uninitialized in this function >> >> >> I suspect the problem here is GCC and not the krb code. Anyone seen this? > > I've seen it today in my world builds, It seems to fail only when building with -Os. > > I've seen similar issue in mdadm, also only with -Os. > is this regression ? or seen for first time? > -- > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > -- > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: "krb" fails to build, suspect GCC bug 2015-10-27 18:26 ` Khem Raj @ 2015-10-27 19:57 ` Martin Jansa 2015-10-27 20:25 ` Martin Jansa 0 siblings, 1 reply; 6+ messages in thread From: Martin Jansa @ 2015-10-27 19:57 UTC (permalink / raw) To: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 3684 bytes --] On Tue, Oct 27, 2015 at 11:26:32AM -0700, Khem Raj wrote: > On Tue, Oct 27, 2015 at 11:21 AM, Martin Jansa <martin.jansa@gmail.com> wrote: > > On Sat, Sep 05, 2015 at 02:39:14PM +0200, Mike Looijmans wrote: > >> I got this weird build failure from the "krb" package: > >> > >> | make[3]: Entering directory > >> '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' > >> | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 > >> --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED > >> -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. > >> -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g > >> -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 > >> -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align > >> -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow > >> -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes > >> -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function > >> -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas > >> -Wsign-compare -Werror=uninitialized -Werror=pointer-arith > >> -Werror=declaration-after-statement > >> -Werror-implicit-function-declaration -pthread -c cc_file.c -o > >> cc_file.so.o && mv -f cc_file.so.o cc_file.so > >> | cc_file.c: In function 'fcc_next_cred': > >> | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this > >> function [-Werror=maybe-uninitialized] > >> | ret = load_data(context, id, maxsize, buf); > >> | ^ > >> | cc_file.c:1091:12: note: 'maxsize' was declared here > >> | size_t maxsize; > >> | ^ > >> | cc1: some warnings being treated as errors > >> > >> Looking at the source, this doesn't make any sense at all. The > >> declaration of the variable isn't even in the same method body. And the > >> line it complains about is about the fifth time it passes that variable > >> to another method. > >> > >> And working around it by initializing maxsize=0 just makes the compiler > >> choke on a similar situation elsewhere: > >> | packet.c:50:67: error: 'id' may be used uninitialized in this function > >> > >> > >> I suspect the problem here is GCC and not the krb code. Anyone seen this? > > > > I've seen it today in my world builds, It seems to fail only when building with -Os. > > > > I've seen similar issue in mdadm, also only with -Os. > > > > is this regression ? or seen for first time? krb5 fails to build like this with -Os at least since dizzy mdadm failure: | raid6check.c: In function 'check_stripes': | raid6check.c:315:8: error: 'stripe_buf' may be used uninitialized in this function [-Werror=maybe-uninitialized] | char *stripe_buf; | ^ | cc1: all warnings being treated as errors | make: *** [raid6check.o] Error 1 | ERROR: oe_runmake failed is newer (seen only in Jethro builds). But maybe only because this is built in do_compile_ptest_base and ptest support was added in oe-core/jethro, it fails the same with gcc-5.2 and gcc-4.9. > > > -- > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > > > -- > > _______________________________________________ > > Openembedded-devel mailing list > > Openembedded-devel@lists.openembedded.org > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > -- > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 188 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: "krb" fails to build, suspect GCC bug 2015-10-27 19:57 ` Martin Jansa @ 2015-10-27 20:25 ` Martin Jansa 2015-10-28 8:23 ` Mike Looijmans 0 siblings, 1 reply; 6+ messages in thread From: Martin Jansa @ 2015-10-27 20:25 UTC (permalink / raw) To: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 4718 bytes --] On Tue, Oct 27, 2015 at 08:57:42PM +0100, Martin Jansa wrote: > On Tue, Oct 27, 2015 at 11:26:32AM -0700, Khem Raj wrote: > > On Tue, Oct 27, 2015 at 11:21 AM, Martin Jansa <martin.jansa@gmail.com> wrote: > > > On Sat, Sep 05, 2015 at 02:39:14PM +0200, Mike Looijmans wrote: > > >> I got this weird build failure from the "krb" package: > > >> > > >> | make[3]: Entering directory > > >> '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' > > >> | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 > > >> --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED > > >> -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. > > >> -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g > > >> -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 > > >> -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align > > >> -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow > > >> -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes > > >> -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function > > >> -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas > > >> -Wsign-compare -Werror=uninitialized -Werror=pointer-arith > > >> -Werror=declaration-after-statement > > >> -Werror-implicit-function-declaration -pthread -c cc_file.c -o > > >> cc_file.so.o && mv -f cc_file.so.o cc_file.so > > >> | cc_file.c: In function 'fcc_next_cred': > > >> | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this > > >> function [-Werror=maybe-uninitialized] > > >> | ret = load_data(context, id, maxsize, buf); > > >> | ^ > > >> | cc_file.c:1091:12: note: 'maxsize' was declared here > > >> | size_t maxsize; > > >> | ^ > > >> | cc1: some warnings being treated as errors > > >> > > >> Looking at the source, this doesn't make any sense at all. The > > >> declaration of the variable isn't even in the same method body. And the > > >> line it complains about is about the fifth time it passes that variable > > >> to another method. > > >> > > >> And working around it by initializing maxsize=0 just makes the compiler > > >> choke on a similar situation elsewhere: > > >> | packet.c:50:67: error: 'id' may be used uninitialized in this function > > >> > > >> > > >> I suspect the problem here is GCC and not the krb code. Anyone seen this? > > > > > > I've seen it today in my world builds, It seems to fail only when building with -Os. > > > > > > I've seen similar issue in mdadm, also only with -Os. > > > > > > > is this regression ? or seen for first time? > > krb5 fails to build like this with -Os at least since dizzy > > mdadm failure: > | raid6check.c: In function 'check_stripes': > | raid6check.c:315:8: error: 'stripe_buf' may be used uninitialized in this function [-Werror=maybe-uninitialized] > | char *stripe_buf; > | ^ > | cc1: all warnings being treated as errors > | make: *** [raid6check.o] Error 1 > | ERROR: oe_runmake failed > > is newer (seen only in Jethro builds). > > But maybe only because this is built in do_compile_ptest_base and ptest > support was added in oe-core/jethro, it fails the same with gcc-5.2 and gcc-4.9. Quick grep in my last -Os world build shows 2 more recipes with similar issue (smbnetfs is failing in krb5 dependency already): physfs: | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c: In function 'ZIP_openArchive': | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c:944:19: error: 'data_start' may be used uninitialized in this function [-Werror=maybe-uninitialized] | entry->offset += ofs_fixup; | ^ | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c:1116:19: note: 'data_start' was declared here | PHYSFS_uint32 data_start; | ^ | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c: In function 'ZIP_openArchive': | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c:944:19: error: 'data_start' may be used uninitialized in this function [-Werror=maybe-uninitialized] | entry->offset += ofs_fixup; | ^ | physfs/2.0.3-r0/physfs-2.0.3/archivers/zip.c:1116:19: note: 'data_start' was declared here | PHYSFS_uint32 data_start; | ^ | cc1: all warnings being treated as errors tvheadend: | tvheadend/3.3-r0/git/src/serviceprobe.c: In function 'serviceprobe_thread': | tvheadend/3.3-r0/git/src/serviceprobe.c:168:7: error: 's' may be used uninitialized in this function [-Werror=maybe-uninitialized] | subscription_unsubscribe(s); | ^ -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 188 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: "krb" fails to build, suspect GCC bug 2015-10-27 20:25 ` Martin Jansa @ 2015-10-28 8:23 ` Mike Looijmans 0 siblings, 0 replies; 6+ messages in thread From: Mike Looijmans @ 2015-10-28 8:23 UTC (permalink / raw) To: openembedded-devel On 27-10-15 21:25, Martin Jansa wrote: > On Tue, Oct 27, 2015 at 08:57:42PM +0100, Martin Jansa wrote: >> On Tue, Oct 27, 2015 at 11:26:32AM -0700, Khem Raj wrote: >>> On Tue, Oct 27, 2015 at 11:21 AM, Martin Jansa <martin.jansa@gmail.com> wrote: >>>> On Sat, Sep 05, 2015 at 02:39:14PM +0200, Mike Looijmans wrote: >>>>> I got this weird build failure from the "krb" package: >>>>> >>>>> | make[3]: Entering directory >>>>> '/TOPDIR/build/tmp/work/mips32el-oe-linux/krb5/1.13.2-r0/krb5-1.13.2/src/lib/krb5/ccache' >>>>> | mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 >>>>> --sysroot=/TOPDIR/build/tmp/sysroots/formuler1 -fPIC -DSHARED >>>>> -DHAVE_CONFIG_H -I../../../include -I../../../include -I./ccapi -I. -I. >>>>> -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Os -pipe -g >>>>> -feliminate-unused-debug-types -DDESTRUCTOR_ATTR_WORKS=1 >>>>> -I/TOPDIR/build/tmp/sysroots/formuler1/usr/include/et -Wall -Wcast-align >>>>> -Wshadow -Wmissing-prototypes -Wno-format-zero-length -Woverflow >>>>> -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes >>>>> -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function >>>>> -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas >>>>> -Wsign-compare -Werror=uninitialized -Werror=pointer-arith >>>>> -Werror=declaration-after-statement >>>>> -Werror-implicit-function-declaration -pthread -c cc_file.c -o >>>>> cc_file.so.o && mv -f cc_file.so.o cc_file.so >>>>> | cc_file.c: In function 'fcc_next_cred': >>>>> | cc_file.c:368:9: error: 'maxsize' may be used uninitialized in this >>>>> function [-Werror=maybe-uninitialized] >>>>> | ret = load_data(context, id, maxsize, buf); >>>>> | ^ >>>>> | cc_file.c:1091:12: note: 'maxsize' was declared here >>>>> | size_t maxsize; >>>>> | ^ >>>>> | cc1: some warnings being treated as errors >>>>> >>>>> Looking at the source, this doesn't make any sense at all. The >>>>> declaration of the variable isn't even in the same method body. And the >>>>> line it complains about is about the fifth time it passes that variable >>>>> to another method. >>>>> >>>>> And working around it by initializing maxsize=0 just makes the compiler >>>>> choke on a similar situation elsewhere: >>>>> | packet.c:50:67: error: 'id' may be used uninitialized in this function >>>>> >>>>> >>>>> I suspect the problem here is GCC and not the krb code. Anyone seen this? >>>> >>>> I've seen it today in my world builds, It seems to fail only when building with -Os. >>>> >>>> I've seen similar issue in mdadm, also only with -Os. >>>> >>> >>> is this regression ? or seen for first time? >> >> krb5 fails to build like this with -Os at least since dizzy Since the move to gcc5 this fails. This workaround makes the build pass once more: https://github.com/OpenPLi/openpli-oe-core/commit/781fea2e5e5e9a18ee905a01b1e2ee80b3aa4721 ... > Quick grep in my last -Os world build shows 2 more recipes with > similar issue (smbnetfs is failing in krb5 dependency already): ... I suspect the bug is in GCC, not in the code of these recipes. Kind regards, Mike Looijmans System Expert TOPIC Embedded Products Eindhovenseweg 32-C, NL-5683 KH Best Postbus 440, NL-5680 AK Best Telefoon: +31 (0) 499 33 69 79 Telefax: +31 (0) 499 33 69 70 E-mail: mike.looijmans@topicproducts.com Website: www.topicproducts.com Please consider the environment before printing this e-mail Visit us at : Aerospace Electrical Systems Expo Europe which will be held from 17.11.2015 till 19.11.2015, Findorffstrasse 101 Bremen, Germany, Hall 5, stand number C65 http://www.aesexpo.eu ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-10-28 8:23 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-09-05 12:39 "krb" fails to build, suspect GCC bug Mike Looijmans 2015-10-27 18:21 ` Martin Jansa 2015-10-27 18:26 ` Khem Raj 2015-10-27 19:57 ` Martin Jansa 2015-10-27 20:25 ` Martin Jansa 2015-10-28 8:23 ` Mike Looijmans
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.