Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Oct 2024 18:35:49 GMT
From:      Dimitry Andric <dim@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org
Subject:   git: c6a101e55094 - 2024Q4 - devel/bazel5: fix build with clang 19
Message-ID:  <202410301835.49UIZn3Y072301@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch 2024Q4 has been updated by dim:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c6a101e55094536ebf9519670ce5b9cbb8522bea

commit c6a101e55094536ebf9519670ce5b9cbb8522bea
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-10-17 18:56:45 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-10-30 18:35:08 +0000

    devel/bazel5: fix build with clang 19
    
    Clang 19 has become more strict about C23 extensions, which results in
    errors building devel/bazel5:
    
      external/upb/upb/upb.c:215:25: error: defining a type within '__builtin_offsetof' is a C23 extension [-Werror,-Wc23-extensions]
        215 |   n = UPB_ALIGN_DOWN(n, UPB_ALIGN_OF(upb_arena));
            |                         ^~~~~~~~~~~~~~~~~~~~~~~
      external/upb/upb/port_def.inc:94:38: note: expanded from macro 'UPB_ALIGN_OF'
         94 | #define UPB_ALIGN_OF(type) offsetof (struct { char c; type member; }, member)
            |                                      ^~~~~~
      /usr/include/stddef.h:64:42: note: expanded from macro 'offsetof'
         64 | #define offsetof(type, field)   __offsetof(type, field)
            |                                            ^~~~
      /usr/include/sys/cdefs.h:324:53: note: expanded from macro '__offsetof'
        324 | #define __offsetof(type, field)  __builtin_offsetof(type, field)
            |                                                     ^~~~
      external/upb/upb/port_def.inc:92:48: note: expanded from macro 'UPB_ALIGN_DOWN'
         92 | #define UPB_ALIGN_DOWN(size, align) ((size) / (align) * (align))
            |                                                ^~~~~
    
    To work around this, amend extra-patch-upb_bazel_build__defs.bzl to also
    add -Wno-c23-extensions. Alternatively, the -Werror option could be
    taken out.
    
    PR:             282166
    Approved by:    vishwin (maintainer)
    MFH:            2024Q4
    
    (cherry picked from commit a34c378a051d3df7767855bb37fc359924f4dcc1)
---
 devel/bazel5/files/extra-patch-upb_bazel_build__defs.bzl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/devel/bazel5/files/extra-patch-upb_bazel_build__defs.bzl b/devel/bazel5/files/extra-patch-upb_bazel_build__defs.bzl
index f31babd394f2..d48fb6aeaf44 100644
--- a/devel/bazel5/files/extra-patch-upb_bazel_build__defs.bzl
+++ b/devel/bazel5/files/extra-patch-upb_bazel_build__defs.bzl
@@ -8,11 +8,12 @@
          # copybara:strip_end
      ],
  })
-@@ -49,6 +50,7 @@
+@@ -49,6 +50,8 @@
          "-Werror=pedantic",
          "-Wall",
          "-Wstrict-prototypes",
 +        "-Wno-gnu-offsetof-extensions",
++        "-Wno-c23-extensions",
          # GCC (at least) emits spurious warnings for this that cannot be fixed
          # without introducing redundant initialization (with runtime cost):
          #   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80635



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202410301835.49UIZn3Y072301>