Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Aug 2024 16:47:10 GMT
From:      Dimitry Andric <dim@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: d2ae63c6feff - main - java/openjdk11: fix build with clang 19
Message-ID:  <202408071647.477GlAFB042050@gitrepo.freebsd.org>

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

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

commit d2ae63c6feffda05eb643520dd851451ee337f53
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-08-01 11:41:40 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-08-07 16:44:21 +0000

    java/openjdk11: fix build with clang 19
    
    Clang 19 is now more strict about undefined integral expressions used as
    constants in enum, which results in errors compiling java/openjdk11,
    similar to:
    
        /wrkdirs/usr/ports/java/openjdk11/work/jdk11u-jdk-11.0.24-8-1/src/jdk.pack/share/native/common-unpack/constants.h:206:33: error: expression is not an integral constant expression
          206 |     AO_UNUSED_MBZ             = (-1)<<13, // options bits reserved for future use.
              |                                 ^~~~~~~~
        /wrkdirs/usr/ports/java/openjdk11/work/jdk11u-jdk-11.0.24-8-1/src/jdk.pack/share/native/common-unpack/constants.h:206:37: note: left shift of negative value -1
          206 |     AO_UNUSED_MBZ             = (-1)<<13, // options bits reserved for future use.
              |                                     ^
    
    Replace the negative value with ~0u to fix this error.
    
    PR:             280560
    Approved by:    glewis (maintainer)
    MFH:            2024Q3
---
 .../patch-src_jdk.pack_share_native_common-unpack_constants.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/java/openjdk11/files/patch-src_jdk.pack_share_native_common-unpack_constants.h b/java/openjdk11/files/patch-src_jdk.pack_share_native_common-unpack_constants.h
new file mode 100644
index 000000000000..b9e766070817
--- /dev/null
+++ b/java/openjdk11/files/patch-src_jdk.pack_share_native_common-unpack_constants.h
@@ -0,0 +1,11 @@
+--- src/jdk.pack/share/native/common-unpack/constants.h.orig	2024-07-27 15:11:22 UTC
++++ src/jdk.pack/share/native/common-unpack/constants.h
+@@ -203,7 +203,7 @@ enum {
+     AO_HAVE_FIELD_FLAGS_HI    = 1<<10,
+     AO_HAVE_METHOD_FLAGS_HI   = 1<<11,
+     AO_HAVE_CODE_FLAGS_HI     = 1<<12,
+-    AO_UNUSED_MBZ             = (-1)<<13, // options bits reserved for future use.
++    AO_UNUSED_MBZ             = (~0u)<<13, // options bits reserved for future use.
+ 
+ #define ARCHIVE_BIT_DO(F) \
+          F(AO_HAVE_SPECIAL_FORMATS) \



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