Date: Sat, 29 Apr 2023 08:47:42 +0000 From: bugzilla-noreply@freebsd.org To: java@FreeBSD.org Subject: [Bug 271080] java/openjdk8: fix build with clang 16 Message-ID: <bug-271080-8522-fvM66HeYGk@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-271080-8522@https.bugs.freebsd.org/bugzilla/> References: <bug-271080-8522@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D271080 --- Comment #3 from commit-hook@FreeBSD.org --- A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=3D6c7525282e522052f7416bf30223c7c= 56f3a5b63 commit 6c7525282e522052f7416bf30223c7c56f3a5b63 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2023-04-26 12:38:28 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2023-04-29 08:45:36 +0000 java/openjdk8: fix build with clang 16 Since clang 16 (and gcc 11) the default C++ standard is now gnu++17. Because java/openjdk8's build infrastructure does not explicitly set its C++ standard, this leads to several errors: =20=20=20=20=20 /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u362-b09.1/hotspot/src/shar= e/vm/adlc/arena.cpp:82:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregis= ter] register Chunk *k =3D _first; ^~~~~~~~~ =20=20=20=20=20 /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u362-b09.1/hotspot/src/shar= e/vm/adlc/arena.cpp:96:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregis= ter] register Chunk *k =3D _chunk; // Get filled-up chunk address ^~~~~~~~~ 2 errors generated. =20=20=20=20=20 /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u362-b09.1/hotspot/src/shar= e/vm/adlc/adlparse.cpp:4567:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregis= ter] register char c; ^~~~~~~~~ =20=20=20=20=20 /wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u362-b09.1/hotspot/src/shar= e/vm/adlc/adlparse.cpp:4765:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregis= ter] register char c; ^~~~~~~~~ For newer versions of OpenJDK this has been fixed by removing the 'register' keyword, but upstream has not yet backported it to OpenJDK 8. To work around the errors, define the register keyword away using a command line flag. PR: 271080 Approved by: glewis (maintainer) MFH: 2023Q2 java/openjdk8/Makefile | 8 ++++++++ 1 file changed, 8 insertions(+) --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-271080-8522-fvM66HeYGk>