Re: emulators/virtualbox-ose-kmod fails to biuld on 14.0-CURRENT 1400079

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sat, 11 Feb 2023 09:20:37 UTC
José Pérez <fbl@aoek.com> writes:

> out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:433:50:
> error: incompatible pointer to integer conversion passing 'void *' to
> parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion]
>         if (RT_FAILURE(RTR0MemUserCopyFrom(&Hdr, pvUser, sizeof(Hdr))))
>                                                  ^~~~~~
> out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:461:50:
> error: incompatible pointer to integer conversion passing 'void *' to
> parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion]
>         if (RT_FAILURE(RTR0MemUserCopyFrom(pHdr, pvUser, Hdr.cbIn)))
>                                                  ^~~~~~
> out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:494:46:
> error: incompatible pointer to integer conversion passing 'void *' to
> parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion]
>             if (RT_FAILURE(RTR0MemUserCopyTo(pvUser, pHdr, cbOut)))
>                                              ^~~~~~
> include/iprt/errcore.h:99:58: note: expanded from macro 'RT_FAILURE'
> #define RT_FAILURE(rc)      ( RT_UNLIKELY(!RT_SUCCESS_NP(rc)) )
>                                                          ^~
> include/iprt/errcore.h:80:38: note: expanded from macro 'RT_SUCCESS_NP'
> # define RT_SUCCESS_NP(rc)   ( (int)(rc) >= VINF_SUCCESS )
>                                      ^~
> include/iprt/cdefs.h:1826:53: note: expanded from macro 'RT_UNLIKELY'
> #  define RT_UNLIKELY(expr)     __builtin_expect(!!(expr), 0)
>                                                     ^~~~
> include/iprt/mem.h:768:41: note: passing argument to parameter
> 'R3PtrDst' here
> RTR0DECL(int) RTR0MemUserCopyTo(RTR3PTR R3PtrDst, void const *pvSrc,
> size_t cb);
>
> Is this known?

Recent large scale fallout is due to Clang 15 upgrade. Ports with many
consumers have been fixed. What's left are ports with few or none
consumers, fixing which is left to the respective maintainers or
interested users.

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265425
https://pkg-status.freebsd.org/builds/default:default:main-amd64:p58633340e9ed_s5636590214:beefy18#new_failed