From b5408a0879b82101f69b6bf3bc29b6e9e4969941 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 18 Jul 2022 02:33:38 +0100 Subject: gentoo auto-resync : 18:07:2022 - 02:33:38 --- dev-java/openjdk/Manifest | 3 +- .../files/openjdk-17.0.3-fix-nullptr-cast.patch | 111 +++++++++++++++++++++ dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild | 2 + 3 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch (limited to 'dev-java/openjdk') diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest index 500583b7d464..ea07f2e31db1 100644 --- a/dev-java/openjdk/Manifest +++ b/dev-java/openjdk/Manifest @@ -1,3 +1,4 @@ +AUX openjdk-17.0.3-fix-nullptr-cast.patch 5052 BLAKE2B d4a75732ba3f6c10279f8d33f58cdf854622fe3bd45fef924b153ab1c5502d414ba40ee36c351f12897672d0a91c4718f521c4e768555ebc166b3dcc99c2e077 SHA512 a9cc08391c3055c73953113df4fe22a37cb7a2785eae360ee323dfbfebb96ad7b2798d64e1fc596eadf2af8871842d8288690d862a579463bb32de844e94cc00 AUX openjdk-8-insantiate-arrayallocator.patch 647 BLAKE2B b2403d842ace7198520a25bf7c2027e6d74b5d418b52321722b21cac866df883d47e53e4f5e040aed55a9cc4bf03b5a62d008a0877add6c649a41f6230d78a38 SHA512 4bf002ec25844f4e55b588d0516e658c548700d3bcae79be74bf75d9cf30cf9cd448767db36935924dd3b07f34d0cf087321cb35abb4943690353d11485ab0de AUX openjdk-8.env.sh 687 BLAKE2B 4bb851545955fafa6a4b08f2589fa9a5441ef37484eb21ac5db06cde111d325903e70b5b7473659973a0bab972386c8f33ded1da57858fdca325cfa29b1122f5 SHA512 a43fc0fcf57108350235d47d6da65a12fb9f77f12f6163c649ceceacb3317c6a25516efa060efe129b74138a529945163343e5a7d1de2b7af36f6580054ed5e5 AUX openjdk.env.sh 432 BLAKE2B 8779a373af2f9e52473cb5e3bc2bbcb7fa83c6d09382d498466888dd322299adc1b736c6e3723fa68e92a80067599228b3511cc2826e1ebc3c5845a7a2f62fa3 SHA512 e6604a88fb857945a618e4b7735d49dbc23bdd4c6fb70fc5753470e9c1047825208a40fe25107bcde95f290656b44f92e1667ebc414454cbae2e71f16fec5fbd @@ -14,6 +15,6 @@ DIST openjdk-bootstrap-17.0.1_p12-x86.tar.xz 111479904 BLAKE2B 17d33f8ee81c2846f DIST openjdk-bootstrap-17.0.2_p8-arm64-musl.tar.xz 115353932 BLAKE2B 0cc4ab078085f094bbcc65448458d98a0f521e3b754c5118b1b4f957cfa00c24e896c811c2a477822c469ffcfe0de1ad6a8d0b7db23b0b09ae3b459eaf8c4fc8 SHA512 e30acd6c64a0095f4203129ecf2cff4c6b4293bc017457465d3abb746d280a2f5d89028eed22f7f3d236890d047149c7aa257e3b49593d7a6ab4dd6b777a7c26 DIST openjdk-bootstrap-17.0.3_p7-riscv.tar.xz 113344052 BLAKE2B 69ae326c600ecf1840a0874b1e26545779434b979e195a3bc7975615f873cd9ffce324f291e56a2800edc304447845baec774b2a08964afde274bd8e0dd3f704 SHA512 4a483faa32b26758f6fae605fdb3d3b77814c627a3a560e91ca88e2d36a88543a53f019a59b5a6456b87ca671e8b7129d5766210bd5cd52125cb3a040ec2a23f EBUILD openjdk-11.0.15_p10-r1.ebuild 8089 BLAKE2B 2a0923de32ada4c7d18a4b27eaf6ae069ec732a82d220e944728f06aced1511fcc70b418e2f47209d1f7fd7f74e4aaa2d8553d39d56e767124a46653a8d726b5 SHA512 e7c1c9896d697105add1830d0652f516f13d0d242fe601fbf8041ed6454d1bd582c976a5e3dd9a1fc5069ae8b095272514b9f427ebd1c400e6792e25585cd959 -EBUILD openjdk-17.0.3_p7-r1.ebuild 8778 BLAKE2B 78a9389bd10fda105320e0adcb99c8282dc71678b073b4d5487d8cc36a1d14c1a345d6d94e40854f01ecfd41c34fe253328aeab556f2c38fde93696fe04cf612 SHA512 94c1729ca78b1791ac78c97780c850bbc1ed6ade0c1179cb2a6844bdbb0f3a5584022ffe65bc41c1dd5d7c41994931abc89bf52e5cc20af218fc697e02b5136b +EBUILD openjdk-17.0.3_p7-r1.ebuild 8841 BLAKE2B 7a269f82275db2f1ae6ae01b598e30d3340b15ee7fe78227104864987c8fafba141f5a8d4d1aa4e9493f0eef2464074c2cb25b7df971ef6834f4cf05ac64da00 SHA512 723e76e909b231b2154770f98a644afb2a9ae4863a1631b6d03d1077caf0f7ed7ea70e7eb102b0239ecc7203ea1635f1e52a8f75ca5871dcf429d39cd4a9f539 EBUILD openjdk-8.332_p09.ebuild 5854 BLAKE2B a769adb453189ebfa6befc3927152b134da1b2619f27d3d967d6c9db2f1ce64e24e175c2de7b0dd00c0804853df6580a78929f0f43ab515d3442828659a53aaf SHA512 5341416b0c67668ac713373cdbbe2dc7869e9b816175ff357ac086ead1495c89826662a3b662720923f6222b8051677a70a23df2150b9f48831f25a6005e9b5c MISC metadata.xml 1506 BLAKE2B d56098f4ba9acb9bd5891247f5165beea69a802ae4fe57f6c0e4b54875efd73d3dafaa78f5c182e640028e31840aa6b9d16bafade717a469b4a43ccbe37cbef6 SHA512 84aa8b3bef355e93fea678612e9512ca2ce5df77efbf4f055589ff67387f0571e43eb5308b8c575eb09bf52b68e5fcc68fdd819a6781080755c3f6c24d6eb77d diff --git a/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch b/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch new file mode 100644 index 000000000000..11f159680d8b --- /dev/null +++ b/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch @@ -0,0 +1,111 @@ +https://git.alpinelinux.org/aports/tree/community/openjdk17/FixNullPtrCast.patch +https://github.com/openjdk/jdk17u/pull/347 + +See also: +https://www.openwall.com/lists/musl/2013/01/09/1 +https://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n20 + +Subject: Fix cast errors with latest GCC (11.2) +Upstream: No +Author: Simon Frankenberger + +This patch fixes multiple casting errors reported by GCC 11.2 + +--- old/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp ++++ new/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp +@@ -205,7 +205,7 @@ + + // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway, + // because it must be the previous value. +- res = load_reference_barrier(decorators, res, reinterpret_cast(NULL)); ++ res = load_reference_barrier(decorators, res, static_cast(NULL)); + satb_enqueue(res); + return res; + } +@@ -216,7 +216,7 @@ + oop previous = RawAccess<>::oop_atomic_xchg(addr, new_value); + // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway, + // because it must be the previous value. +- previous = load_reference_barrier(decorators, previous, reinterpret_cast(NULL)); ++ previous = load_reference_barrier(decorators, previous, static_cast(NULL)); + satb_enqueue(previous); + return previous; + } +--- old/src/hotspot/share/oops/access.hpp ++++ new/src/hotspot/share/oops/access.hpp +@@ -294,8 +294,8 @@ + static inline void arraycopy(arrayOop src_obj, size_t src_offset_in_bytes, + arrayOop dst_obj, size_t dst_offset_in_bytes, + size_t length) { +- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast(NULL), +- dst_obj, dst_offset_in_bytes, reinterpret_cast(NULL), ++ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast(NULL), ++ dst_obj, dst_offset_in_bytes, static_cast(NULL), + length); + } + +@@ -303,7 +303,7 @@ + static inline void arraycopy_to_native(arrayOop src_obj, size_t src_offset_in_bytes, + T* dst, + size_t length) { +- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast(NULL), ++ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast(NULL), + NULL, 0, dst, + length); + } +@@ -313,15 +313,15 @@ + arrayOop dst_obj, size_t dst_offset_in_bytes, + size_t length) { + AccessT::arraycopy(NULL, 0, src, +- dst_obj, dst_offset_in_bytes, reinterpret_cast(NULL), ++ dst_obj, dst_offset_in_bytes, static_cast(NULL), + length); + } + + static inline bool oop_arraycopy(arrayOop src_obj, size_t src_offset_in_bytes, + arrayOop dst_obj, size_t dst_offset_in_bytes, + size_t length) { +- return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast(NULL), +- dst_obj, dst_offset_in_bytes, reinterpret_cast(NULL), ++ return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, static_cast(NULL), ++ dst_obj, dst_offset_in_bytes, static_cast(NULL), + length); + } + +--- old/src/hotspot/cpu/x86/interp_masm_x86.cpp ++++ new/src/hotspot/cpu/x86/interp_masm_x86.cpp +@@ -1122,7 +1122,7 @@ + + bind(loop); + // check if current entry is used +- cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), (int32_t) NULL); ++ cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), 0); + jcc(Assembler::notEqual, exception); + + addptr(rmon, entry_size); // otherwise advance to next entry +--- old/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp ++++ new/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp +@@ -443,10 +443,10 @@ + _from -= Interpreter::stackElementSize; + + if (_num_int_args < Argument::n_int_register_parameters_c-1) { +- *_int_args++ = (*from_addr == 0) ? NULL : (intptr_t)from_addr; ++ *_int_args++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr; + _num_int_args++; + } else { +- *_to++ = (*from_addr == 0) ? NULL : (intptr_t) from_addr; ++ *_to++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr; + } + } + +--- old/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp ++++ new/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp +@@ -267,7 +267,7 @@ + + virtual void pass_object() { + intptr_t* addr = single_slot_addr(); +- intptr_t value = *addr == 0 ? NULL : (intptr_t)addr; ++ intptr_t value = *addr == 0 ? (intptr_t) 0 : (intptr_t)addr; + if (pass_gpr(value) < 0) { + pass_stack<>(value); + } diff --git a/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild b/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild index 226b675fbd2f..c79922b35711 100644 --- a/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild +++ b/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild @@ -107,6 +107,8 @@ DEPEND=" S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}" +PATCHES=( "${FILESDIR}"/${PN}-17.0.3-fix-nullptr-cast.patch ) + # The space required to build varies wildly depending on USE flags, # ranging from 2GB to 16GB. This function is certainly not exact but # should be close enough to be useful. -- cgit v1.2.3