Message ID | 20170406125434.10793-1-wei.liu2@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
>>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote: > --- a/xen/include/Makefile > +++ b/xen/include/Makefile > @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile > headers99.chk: $(PUBLIC_C99_HEADERS) Makefile > rm -f $@.new > $(foreach i, $(filter %.h,$^), \ > - $(CC) -x c -std=c99 -Wall -Werror \ > + $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function \ > -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h) \ > -S -o /dev/null $(i) \ > || exit $$?; echo $(i) >> $@.new;) I think it would be better to make this match the C++ check, where a source file is being generated on the fly (and quite possibly for a similar reason). Jan
On Thu, 6 Apr 2017, Jan Beulich wrote: > >>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote: > > --- a/xen/include/Makefile > > +++ b/xen/include/Makefile > > @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile > > headers99.chk: $(PUBLIC_C99_HEADERS) Makefile > > rm -f $@.new > > $(foreach i, $(filter %.h,$^), \ > > - $(CC) -x c -std=c99 -Wall -Werror \ > > + $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function \ > > -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h) \ > > -S -o /dev/null $(i) \ > > || exit $$?; echo $(i) >> $@.new;) > > I think it would be better to make this match the C++ check, where > a source file is being generated on the fly (and quite possibly for a > similar reason). I don't have an opinion on what is the best way to fix this. However, I'll say that it is expected to have unused functions in header files (it would be a problem if there weren't), so -Wno-unused-function looks fine to me. Wei, given that the problem was introduced by my patch, let me know if you need any help fixing this.
On Thu, Apr 06, 2017 at 09:51:32AM -0700, Stefano Stabellini wrote: > On Thu, 6 Apr 2017, Jan Beulich wrote: > > >>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote: > > > --- a/xen/include/Makefile > > > +++ b/xen/include/Makefile > > > @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile > > > headers99.chk: $(PUBLIC_C99_HEADERS) Makefile > > > rm -f $@.new > > > $(foreach i, $(filter %.h,$^), \ > > > - $(CC) -x c -std=c99 -Wall -Werror \ > > > + $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function \ > > > -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h) \ > > > -S -o /dev/null $(i) \ > > > || exit $$?; echo $(i) >> $@.new;) > > > > I think it would be better to make this match the C++ check, where > > a source file is being generated on the fly (and quite possibly for a > > similar reason). > > I don't have an opinion on what is the best way to fix this. However, > I'll say that it is expected to have unused functions in header files > (it would be a problem if there weren't), so -Wno-unused-function looks > fine to me. > > Wei, given that the problem was introduced by my patch, let me know if > you need any help fixing this. > No need. I have another patch queued up for posting -- waiting for report from travis. Wei. > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > https://lists.xen.org/xen-devel
diff --git a/xen/include/Makefile b/xen/include/Makefile index 65a732a707..b0bacc99b5 100644 --- a/xen/include/Makefile +++ b/xen/include/Makefile @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile headers99.chk: $(PUBLIC_C99_HEADERS) Makefile rm -f $@.new $(foreach i, $(filter %.h,$^), \ - $(CC) -x c -std=c99 -Wall -Werror \ + $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function \ -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h) \ -S -o /dev/null $(i) \ || exit $$?; echo $(i) >> $@.new;)
The check builds header file as if it is a C file. Clang doesn't like the idea of having dead code in C file. The check as-is fails on Clang with unused function warnings. We know for sure we don't care about those unused function warnings. Just ignore them. Signed-off-by: Wei Liu <wei.liu2@citrix.com> --- Cc: Andrew Cooper <andrew.cooper3@citrix.com> Cc: George Dunlap <George.Dunlap@eu.citrix.com> Cc: Ian Jackson <ian.jackson@eu.citrix.com> Cc: Jan Beulich <jbeulich@suse.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Stefano Stabellini <sstabellini@kernel.org> Cc: Tim Deegan <tim@xen.org> Cc: Wei Liu <wei.liu2@citrix.com> --- xen/include/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)