[Bug 295800] llvm 21.1.8 breaks buildworld with WITHOUT_INET6=yes

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 02 Jun 2026 17:31:38 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295800

            Bug ID: 295800
           Summary: llvm 21.1.8 breaks buildworld with WITHOUT_INET6=yes
           Product: Base System
           Version: 14.4-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: john@cybersashi.com

Created attachment 271429
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=271429&action=edit
Patch to workaround issue.

Since the update to LLVM 21.1.8 doing a buildworld of stable/14 with
WITHOUT_INET6=yes results in:

  /usr/src/usr.sbin/inetd/inetd.c:1377:44: error: variable 'nbuf2' is
uninitialized when passed as a const pointer argument here
[-Werror,-Wuninitialized-const-pointer]
 1377 |                                 rpcb_set(sep->se_rpc_prog, i, netid2,
&n
buf2);
      |                                                                       
^
~~~~

In March (i.e. prior to llvm 21.1.8) buildworld worked fine.

With the attached patch the buildworld succeeds using llvm 21.1.8.

Strictly speaking given the original code of:

  struct netconfig *netid, *netid2 = NULL;
  ...
  #ifdef INET6
  ...
  #endif
  ...
  if (netid2) {
                                rpcb_unset(sep->se_rpc_prog, i, netid2);
                                rpcb_set(sep->se_rpc_prog, i, netid2, &nbuf2);
                        }

It seems like the rpcb_set should be unreachable code with WITHOUT_INET6=yes so
the llvm error is a false positive, however patching inetd was a quick fix.

-- 
You are receiving this mail because:
You are the assignee for the bug.