Re: SVN r327444 breaks current build

From: Oleksandr Tymoshenko <gonzo_at_bluezbox.com>
Date: Mon, 1 Jan 2018 15:00:34 -0800
Ian Lepore (ian_at_freebsd.org) wrote:
> On Sun, 2017-12-31 at 15:53 -0800, Oleksandr Tymoshenko wrote:
> > Nathan Whitehorn (nwhitehorn_at_freebsd.org) wrote:
> > > 
> > > 
> > > 
> > > On 12/31/17 14:22, Oleksandr Tymoshenko wrote:
> > > > 
> > > > Michael Butler (imb_at_protected-networks.net) wrote:
> > > > > 
> > > > > Building /usr/obj/usr/src/amd64.amd64/sys/VM01/vt_font_default.o
> > > > > --- vt_termcolors.o ---
> > > > > /usr/src/sys/dev/vt/colors/vt_termcolors.c:158:55: error: too many
> > > > > arguments to function call, expected 4, have 5
> > > > >                          if (vt_parse_rgb_triplet(rgb, strlen(rgb), &r,
> > > > > &g, &b) == 0) {
> > > > >                              ~~~~~~~~~~~~~~~~~~~~
> > > > >    ^~
> > > > > /usr/src/sys/dev/vt/colors/vt_termcolors.c:77:1: note:
> > > > > 'vt_parse_rgb_triplet' declared here
> > > > > static int
> > > > > ^
> > > > > 1 error generated.
> > > > > *** [vt_termcolors.o] Error code 1
> > > > > 
> > > > >  .. second time today a commit wasn't tested before commit :-(
> > > > > 
> > > > > 	imb
> > > > Should be fixed in r327449. It was a sloppy job, I was making iterative
> > > > improvements to the original patch following review feedback and used
> > > > out-of-tree testcases for actual testing. I appologize for the breakage.
> > > > 
> > > Still broken with GCC.
> > > 
> > > /usr/src/sys/dev/vt/colors/vt_termcolors.c:148: warning: function 
> > > declaration isn't a prototype [-Wstrict-prototypes]
> > > *** [vt_termcolors.o] Error code 1
> > *sigh* Should be fixed in r327454. Thanks for reporting
> > 
> > I wonder if we can get clang to be more strict about
> > declarations/prototypes/etc to match gcc's expectations. I understand
> > that it's developers' responsibility to make sure that kernel
> > is GCC-buildable but if raising red flag for some of the cases
> > when compiling with clang reduced number of these breakages
> > that it'd be an improvement.
> > 
> 
> I think we can get clang to do that with -Wstrict-prototypes, but I'm
> not sure when that option appeared in terms of clang version, and the
> clang site doesn't seem to provide documentation for anything other
> than the current in-development version.

-Wstrict-prototypes option was added in 5.0.0 and kernel build has
this flag enabled. But this check works only for declaration and
ignores definitions.

-- 
gonzo
Received on Mon Jan 01 2018 - 22:00:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:14 UTC