Date: Sat, 20 Feb 2016 00:23:40 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Alan Somers <asomers@freebsd.org> Cc: Sergey Kandaurov <pluknet@gmail.com>, "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org> Subject: Re: svn commit: r295768 - head/usr.sbin/iostat Message-ID: <83BB8467-4C40-4CF1-B394-1376C9D97FCF@FreeBSD.org> In-Reply-To: <CAOtMX2hyZ=GFgp8F6t0dMDYF5FSPdoP9KdMU7V5rmscpaPUnsw@mail.gmail.com> References: <201602182008.u1IK81vg092127@repo.freebsd.org> <CAE-mSO%2B7p=Equq81PPQjfZv1piPydBr4Mnk363CEs3w9EXRi9w@mail.gmail.com> <CAOtMX2hyZ=GFgp8F6t0dMDYF5FSPdoP9KdMU7V5rmscpaPUnsw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_238E574B-3F5B-481A-9AB3-C2137EB2BD81 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 19 Feb 2016, at 16:49, Alan Somers <asomers@freebsd.org> wrote: >=20 > On Fri, Feb 19, 2016 at 5:24 AM, Sergey Kandaurov <pluknet@gmail.com> = wrote: ... >>> -struct nlist namelist[] =3D { >>> +static struct nlist namelist[] =3D { >>> #define X_TTY_NIN 0 >>> - { "_tty_nin" }, >>> + { .n_name =3D "_tty_nin", >>> + .n_type =3D 0, .n_other =3D 0, .n_desc =3D 0, .n_value =3D = 0 }, >>> [...] >>=20 >> You unlikely need this excessive explicit zeroization. >> In this case it is implicitly prezeroed. ... > Yeah, it was being implicitly zeroized before. But Clang complained > about the structures being only partially initialized. Since the > whole point of my commit was to increase the WARNS level, I explicitly > zeroed the zero fields to silence Clang. You got this warning, most likely: usr.sbin/iostat/iostat.c:122:15: error: missing field 'n_type' = initializer [-Werror,-Wmissing-field-initializers] { "_tty_nin" }, ^ This warning is only produced when you use -Wall -W, and then initialize structs partially, i.e. you initialize some fields but not others. I think this is a quite reasonable warning for a high warning level. On the other hand, if this kind of construct is used throughout the tree, and it is not seen as a big problem, we can simply silence this particular warning using -Wno-missing-field -initializers. There is already quite a list of warnings which are suppressed by default, even at WARNS=3D6, namely: -Wno-empty-body -Wno-format-y2k -Wno-pointer-sign -Wno-string-plus-int -Wno-unused-const-variable -Wno-unused-parameter -Dimitry --Apple-Mail=_238E574B-3F5B-481A-9AB3-C2137EB2BD81 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.29 iEYEARECAAYFAlbHpAUACgkQsF6jCi4glqMxlQCg/fTaWwEfvIldNSVMJDEjxMbV xD0AoI7Hez0QV3G6p9UhX8FsRzU/eYZJ =fJ6B -----END PGP SIGNATURE----- --Apple-Mail=_238E574B-3F5B-481A-9AB3-C2137EB2BD81--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?83BB8467-4C40-4CF1-B394-1376C9D97FCF>