Maxim Sobolev
2017-Aug-07 13:20 UTC
11.1-RELEASE has issue with system headers in pedantic mode (type nullability specifier)
Hi, we noticed that some of our internal packages fail the build on 11.1 now with -pedantic: *00:31:09.178* Warning: Object directory not changed from original /tmp/mnt/dncd/work/dncd-20170627161415*00:31:09.178* cc -pipe -g3 -O0 -pipe -fstack-protector -fno-strict-aliasing -Wall -pedantic -O0 -g3 -g3 -O0 -pipe -MD -MF.depend.main.o -MTmain.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-arguments -c main.c -o main.o*00:31:09.455* In file included from main.c:17:*00:31:09.456* /usr/include/err.h:63:27: error: type nullability specifier '_Nullable' is a Clang extension [-Werror,-Wnullability-extension]*00:31:09.456* void err_set_exit(void (* _Nullable)(int));*00:31:09.456* ^*00:31:09.456* In file included from main.c:19:*00:31:09.456* /usr/include/signal.h:87:27: error: type nullability specifier '_Nonnull' is a Clang extension [-Werror,-Wnullability-extension]*00:31:09.456* int sigpending(sigset_t * _Nonnull); I am not sure what the solution might be, perhaps change pedantic to make this condition non-fatal in pedantic mode? -Max
Maxim Sobolev
2017-Aug-07 15:20 UTC
11.1-RELEASE has issue with system headers in pedantic mode (type nullability specifier)
One way to defeat this would be to mark those headers with the #pragma clang system_header. As per: https://clang.llvm.org/docs/UsersManual.html#id27 -Max On Mon, Aug 7, 2017 at 6:20 AM, Maxim Sobolev <sobomax at freebsd.org> wrote:> Hi, we noticed that some of our internal packages fail the build on 11.1 > now with -pedantic: > > *00:31:09.178* Warning: Object directory not changed from original /tmp/mnt/dncd/work/dncd-20170627161415*00:31:09.178* cc -pipe -g3 -O0 -pipe -fstack-protector -fno-strict-aliasing -Wall -pedantic -O0 -g3 -g3 -O0 -pipe -MD -MF.depend.main.o -MTmain.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-arguments -c main.c -o main.o*00:31:09.455* In file included from main.c:17:*00:31:09.456* /usr/include/err.h:63:27: error: type nullability specifier '_Nullable' is a Clang extension [-Werror,-Wnullability-extension]*00:31:09.456* void err_set_exit(void (* _Nullable)(int));*00:31:09.456* ^*00:31:09.456* In file included from main.c:19:*00:31:09.456* /usr/include/signal.h:87:27: error: type nullability specifier '_Nonnull' is a Clang extension [-Werror,-Wnullability-extension]*00:31:09.456* int sigpending(sigset_t * _Nonnull); > > > I am not sure what the solution might be, perhaps change pedantic to make this condition non-fatal in pedantic mode? > > > -Max > >