[Bug 258508] misc/rump: fix build with clang 13
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 14 Sep 2021 21:36:34 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258508 Bug ID: 258508 Summary: misc/rump: fix build with clang 13 Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: vanilla@FreeBSD.org Reporter: dim@FreeBSD.org Flags: maintainer-feedback?(vanilla@FreeBSD.org) Assignee: vanilla@FreeBSD.org During an exp-run for llvm 13 (see bug 258209), it turned out that misc/rump fails to build with clang 13: # compile librump/nist_ctr_drbg.pico /wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/obj/tooldir/bin/x86_64--netbsd-clang -O2 -O2 -pipe -Wno-address-of-packed-member -fstack-protector-strong -fno-strict-aliasing -ffreestandin g -fno-strict-aliasing -mno-red-zone -mno-mmx -mno-sse -mno-avx -msoft-float -std=gnu99 -Wno-sign-compare -Wno-pointer-sign -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -W no-sign-compare -Wa,--fatal-warnings -Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra -Wno-unused-parameter -Wno-varargs -Wno-sign-compare -Werror -Wno-format-zero-length -Wno -pointer-sign -DRUMPUSER_CONFIG=yes -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/obj/tooldir/autoconf -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/obj/tooldir/compat/i nclude -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/obj/dest.stage/usr/include -DCOMPAT_50 -DCOMPAT_60 -DCOMPAT_70 -nostdinc -imacros /wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b 914579/src/lib/librump/../../sys/rump/include/opt/opt_rumpkernel.h -imacros /wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/obj/tooldir/include/opt_buildrump.h -I/wrkdirs/usr/ports/misc/ru mp/work/buildrump.sh-b914579/src/lib/librump -I. -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../../common/include -I/wrkdirs/usr/ports/misc/rump/work/b uildrump.sh-b914579/src/lib/librump/../../sys/rump/include -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/include/opt -I/wrkdirs/usr/ports/misc/rump/work/ buildrump.sh-b914579/src/lib/librump/../../sys/rump/../arch -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/.. -DRUMP_USE_CTOR -DRUMP_CURLWP=RUMP_CURLWP___ THREAD -DKTRACE -U__FreeBSD__ -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/librump/rumpkern -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src /lib/librump/../../sys/rump/../lib/libkern/arch/x86_64 -D_RUMPKERNEL -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../lib/libkern/../../../common/lib/li bc/quad -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../lib/libkern/../../../common/lib/libc/string -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b91 4579/src/lib/librump/../../sys/rump/../lib/libkern/../../../common/lib/libc/arch/x86_64/string -I/wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../lib/libke rn/../../../common/include -c -fPIC /wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../crypto/nist_ctr_drbg/nist_ctr_drbg.c -o nist_ctr_drbg.pico /wrkdirs/usr/ports/misc/rump/work/buildrump.sh-b914579/src/lib/librump/../../sys/rump/../crypto/nist_ctr_drbg/nist_ctr_drbg.c:156:32: error: performing pointer subtraction with a null pointer has undefined behavior [-Werror,-Wnull-pointer-subtraction] intptr_t ip = (const char *)p - (const char *)0; ^ ~~~~~~~~~~~~~~~ This particular new clang 13 warning is indeed a bug and should be fixed, by simply casting the pointer 'p' directly to intptr_t instead. The other new clang 13 warning emitted quite a lot is -Wunused-but-set-variable. As this occurs quite often, and is not very useful to patch without involving upstream, I propose disabling the warning for now. -- You are receiving this mail because: You are the assignee for the bug.