From b9e8f3cc44aed3b6da71c7510c6287bf7bbbc66b Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@koprulu.sector>
Date: Wed, 14 Jun 2023 15:13:45 +0100
Subject: gentoo auto-resync : 14:06:2023 - 15:13:45

---
 sys-devel/Manifest.gz                              | Bin 10634 -> 10633 bytes
 sys-devel/clang-common/Manifest                    |   6 +-
 .../clang-common/clang-common-16.0.5-r1.ebuild     |   2 +-
 .../clang-common/clang-common-16.0.6-r1.ebuild     | 190 ++++++++
 .../clang-common/clang-common-16.0.6.9999.ebuild   | 190 --------
 sys-devel/clang-runtime/Manifest                   |   4 +-
 .../clang-runtime/clang-runtime-16.0.5.ebuild      |   2 +-
 .../clang-runtime/clang-runtime-16.0.6.9999.ebuild |  41 --
 .../clang-runtime/clang-runtime-16.0.6.ebuild      |  40 ++
 sys-devel/clang-toolchain-symlinks/Manifest        |   2 +-
 .../clang-toolchain-symlinks-16-r2.ebuild          |   2 +-
 sys-devel/clang/Manifest                           |   7 +-
 sys-devel/clang/clang-16.0.5.ebuild                |   2 +-
 sys-devel/clang/clang-16.0.6.9999.ebuild           | 483 -------------------
 sys-devel/clang/clang-16.0.6.ebuild                | 484 +++++++++++++++++++
 sys-devel/gcc-apple/Manifest                       |   2 -
 .../gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch |  20 -
 sys-devel/gcc-apple/files/libstdc++-16.patch       |  11 -
 sys-devel/lld-toolchain-symlinks/Manifest          |   2 +-
 .../lld-toolchain-symlinks-16-r2.ebuild            |   2 +-
 sys-devel/lld/Manifest                             |   6 +-
 sys-devel/lld/lld-16.0.5.ebuild                    |   2 +-
 sys-devel/lld/lld-16.0.6.9999.ebuild               |  90 ----
 sys-devel/lld/lld-16.0.6.ebuild                    |  90 ++++
 sys-devel/llvm-common/Manifest                     |   6 +-
 sys-devel/llvm-common/llvm-common-16.0.5.ebuild    |   2 +-
 .../llvm-common/llvm-common-16.0.6.9999.ebuild     |  28 --
 sys-devel/llvm-common/llvm-common-16.0.6.ebuild    |  28 ++
 sys-devel/llvm-toolchain-symlinks/Manifest         |   2 +-
 .../llvm-toolchain-symlinks-16-r1.ebuild           |   2 +-
 sys-devel/llvm/Manifest                            |   7 +-
 sys-devel/llvm/llvm-16.0.5.ebuild                  |   2 +-
 sys-devel/llvm/llvm-16.0.6.9999.ebuild             | 518 --------------------
 sys-devel/llvm/llvm-16.0.6.ebuild                  | 519 +++++++++++++++++++++
 sys-devel/llvmgold/Manifest                        |   2 +-
 sys-devel/llvmgold/llvmgold-16.ebuild              |   2 +-
 36 files changed, 1389 insertions(+), 1409 deletions(-)
 create mode 100644 sys-devel/clang-common/clang-common-16.0.6-r1.ebuild
 delete mode 100644 sys-devel/clang-common/clang-common-16.0.6.9999.ebuild
 delete mode 100644 sys-devel/clang-runtime/clang-runtime-16.0.6.9999.ebuild
 create mode 100644 sys-devel/clang-runtime/clang-runtime-16.0.6.ebuild
 delete mode 100644 sys-devel/clang/clang-16.0.6.9999.ebuild
 create mode 100644 sys-devel/clang/clang-16.0.6.ebuild
 delete mode 100644 sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch
 delete mode 100644 sys-devel/gcc-apple/files/libstdc++-16.patch
 delete mode 100644 sys-devel/lld/lld-16.0.6.9999.ebuild
 create mode 100644 sys-devel/lld/lld-16.0.6.ebuild
 delete mode 100644 sys-devel/llvm-common/llvm-common-16.0.6.9999.ebuild
 create mode 100644 sys-devel/llvm-common/llvm-common-16.0.6.ebuild
 delete mode 100644 sys-devel/llvm/llvm-16.0.6.9999.ebuild
 create mode 100644 sys-devel/llvm/llvm-16.0.6.ebuild

(limited to 'sys-devel')

diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index 2d265b12efe7..7756ecf659dd 100644
Binary files a/sys-devel/Manifest.gz and b/sys-devel/Manifest.gz differ
diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest
index 1f60241bf185..77efab27c5e0 100644
--- a/sys-devel/clang-common/Manifest
+++ b/sys-devel/clang-common/Manifest
@@ -4,12 +4,14 @@ DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.5.src.tar.xz 118000368 BLAKE2B 9f84e6bab450dc8d6379771afbca5cddc6fbad6c9728726f7158f290ab87d464ff657e89e1c8fc3c474362cc865ff13c5d55ef758c848ea3e660d732cb2fdefa SHA512 7008e7e9c8c2246fe98ba3f0c0fa91e41c88c4da427bf1cfdcce7ef57e5ea838efe7c58c523a7d1708e70d64a4338afe16d06fba2fc7ac5a6c19ca3d6ee41e99
 DIST llvm-project-16.0.5.src.tar.xz.sig 566 BLAKE2B 4c96f294f350e0086f8504a54c3387308c60efb573c8def40aec45b1918d43e36c44bafb0823625b6cefa5d99b3aacd7823d6c92c7a64a737653d5b51839a924 SHA512 4550c7c6a1b6ea603d1499aba5aca746f3948a00e7567604f5e7dc3b215a34357bad382a7ebea1f6cd7952841cb75a0dfbe2c278a8c6fcb630a5035b3e16e869
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
 DIST llvm-project-62c0bdabfa32f6e32b17b45425b15309db340dfb.tar.gz 190948645 BLAKE2B f41d8ea32e189ef4641e42628fb516e307c9a6fcf65af537eb9fc0d3186591b062c5e85c9e935511ef706f28c6994a774a4e3f36ff54d79aaac7b293a6168625 SHA512 55a4cbfec3a496c1918aa614e5bdee368e4d0b6641c946d8bf8b828ab4bf4d9b29dbe96401a172079d70f924f5e513428fe990c65b556a0a860802cb13f5e3a0
 EBUILD clang-common-14.0.6.ebuild 541 BLAKE2B 87b158e874cf600e23591a8095e0edb4d30d4482600ef8fe38984e9ba9559e6e2226107cd482f355d950392a6a452e1a8ae79d297d5afc3951a7f1c8f6227b5f SHA512 1bd0481468c278f131ec9f87243927b60a59752f4229450559bf8016e9599155a52593810fcdc1cf0aecd4aa1529e8df300d95123a53de18eb326152caafbbef
 EBUILD clang-common-15.0.7-r5.ebuild 5090 BLAKE2B 39974630209630607d10903585223df68cd809fb390fc9eb2a80c4235ce70ae21120083f8eaf749c769a93f738c4e971e31e978dd637a0b87d07260281db4b83 SHA512 6cb37a7eb373d300d165e851e3643fd35e11d78a6a88617b4a8c0063b83558d10d307c32861e9ba2d0ac902c1cd2069ece6bd1446e309a6753f13adf8cd8fa2c
 EBUILD clang-common-15.0.7-r6.ebuild 5449 BLAKE2B 34001daa85a7ed75e5b27b2a93d4b7c12a11fcd575a76198937d4214b350f6ec5674c9e856a5b29a7b946c19a77fc818f33b75b82a94861e1c25a19b2c35bf8d SHA512 189e8fe88850fb2d22b39d6d4ed2df7bad0f321c0293823f0a335f10f0f6d29328e57190997da83699c9f34c1ef82ac6f530fd7ac866db2ffa1afde8d2198bb6
-EBUILD clang-common-16.0.5-r1.ebuild 5517 BLAKE2B b6ab86006359b058f3503e0686a9f9b2172c0cf8db02859213ccfa3785cd670229b174326a142817299f8ac841139eb03029430a68a46ef75388024da9303afe SHA512 e063f0a43f937ed4f173aff4fe090ba1e084bf1ecd80549a41459e0ed1ebff0d68a6617b66926e1abb4874eccb2fb4541cf6667299d33be3cb969cc1a5eb32b7
-EBUILD clang-common-16.0.6.9999.ebuild 5426 BLAKE2B dbab7084dcf1ec1c79c8f1c9b52733731917e8a98907891ac3498d9614b5762034f3c45ec40e137e34214c1788b5c0f24dc53d39a3ab764800edfbe61dbb7c70 SHA512 cc1a9faaa11de0b0cb484dccca330cc82ed020c21fb3872db58680411ac3f16171ed8569faf9e59eaf713238728c58f737197ebd337fd1fe797a6455a55d1328
+EBUILD clang-common-16.0.5-r1.ebuild 5516 BLAKE2B 3c49327bdadecfd84a37047ed86653ae6e983f7cdc4c58894701e0368c6b059197435e94b3ad4a806920ea054a44893493038892950a470ef434650ceafba8cb SHA512 30af72f57b4d3894c7e2bbda932a9def04226f966067d2172e693e5bb40f15cb9ce2f925bb5eae33ec07cd032129e66d020fcd51306286dd7d870ec896cefca7
+EBUILD clang-common-16.0.6-r1.ebuild 5517 BLAKE2B b6ab86006359b058f3503e0686a9f9b2172c0cf8db02859213ccfa3785cd670229b174326a142817299f8ac841139eb03029430a68a46ef75388024da9303afe SHA512 e063f0a43f937ed4f173aff4fe090ba1e084bf1ecd80549a41459e0ed1ebff0d68a6617b66926e1abb4874eccb2fb4541cf6667299d33be3cb969cc1a5eb32b7
 EBUILD clang-common-17.0.0.9999.ebuild 5426 BLAKE2B dbab7084dcf1ec1c79c8f1c9b52733731917e8a98907891ac3498d9614b5762034f3c45ec40e137e34214c1788b5c0f24dc53d39a3ab764800edfbe61dbb7c70 SHA512 cc1a9faaa11de0b0cb484dccca330cc82ed020c21fb3872db58680411ac3f16171ed8569faf9e59eaf713238728c58f737197ebd337fd1fe797a6455a55d1328
 EBUILD clang-common-17.0.0_pre20230609.ebuild 5426 BLAKE2B dbab7084dcf1ec1c79c8f1c9b52733731917e8a98907891ac3498d9614b5762034f3c45ec40e137e34214c1788b5c0f24dc53d39a3ab764800edfbe61dbb7c70 SHA512 cc1a9faaa11de0b0cb484dccca330cc82ed020c21fb3872db58680411ac3f16171ed8569faf9e59eaf713238728c58f737197ebd337fd1fe797a6455a55d1328
 MISC metadata.xml 735 BLAKE2B 12ea133df3d7eb9367a65e572ef91893e654d5b77caa27c66e4b5b41ba90ebc5e619eb78dfff2a67183d2c1cbfcf35fa903b2bb75604ce153d5cedfce5346e3c SHA512 8ed6b12d4f2aa1985897a8d81ce898dbc0d14ac222f3d0f259cbe80fbb8b2349dff7677627daeaf39a422f290200da4fac6348abc81c9e35da0ca73a11cfdd83
diff --git a/sys-devel/clang-common/clang-common-16.0.5-r1.ebuild b/sys-devel/clang-common/clang-common-16.0.5-r1.ebuild
index 358dca01c333..273edf2baa01 100644
--- a/sys-devel/clang-common/clang-common-16.0.5-r1.ebuild
+++ b/sys-devel/clang-common/clang-common-16.0.5-r1.ebuild
@@ -10,7 +10,7 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
 SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
 IUSE="
 	default-compiler-rt default-libcxx default-lld llvm-libunwind
 	hardened stricter
diff --git a/sys-devel/clang-common/clang-common-16.0.6-r1.ebuild b/sys-devel/clang-common/clang-common-16.0.6-r1.ebuild
new file mode 100644
index 000000000000..358dca01c333
--- /dev/null
+++ b/sys-devel/clang-common/clang-common-16.0.6-r1.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 llvm.org
+
+DESCRIPTION="Common files shared between multiple slots of clang"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+IUSE="
+	default-compiler-rt default-libcxx default-lld llvm-libunwind
+	hardened stricter
+"
+
+PDEPEND="
+	sys-devel/clang:*
+	default-compiler-rt? (
+		sys-devel/clang-runtime[compiler-rt]
+		llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] )
+		!llvm-libunwind? ( sys-libs/libunwind[static-libs] )
+	)
+	!default-compiler-rt? ( sys-devel/gcc )
+	default-libcxx? ( >=sys-libs/libcxx-${PV} )
+	!default-libcxx? ( sys-devel/gcc )
+	default-lld? ( sys-devel/lld )
+	!default-lld? ( sys-devel/binutils )
+"
+IDEPEND="
+	!default-compiler-rt? ( sys-devel/gcc-config )
+	!default-libcxx? ( sys-devel/gcc-config )
+"
+
+LLVM_COMPONENTS=( clang/utils )
+llvm.org_set_globals
+
+pkg_pretend() {
+	[[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return
+
+	local flag missing_flags=()
+	for flag in default-{compiler-rt,libcxx,lld}; do
+		if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then
+			missing_flags+=( "${flag}" )
+		fi
+	done
+
+	if [[ ${missing_flags[@]} ]]; then
+		eerror "It seems that you have the following flags set on sys-devel/clang:"
+		eerror
+		eerror "  ${missing_flags[*]}"
+		eerror
+		eerror "The default runtimes are now set via flags on sys-devel/clang-common."
+		eerror "The build is being aborted to prevent breakage.  Please either set"
+		eerror "the respective flags on this ebuild, e.g.:"
+		eerror
+		eerror "  sys-devel/clang-common ${missing_flags[*]}"
+		eerror
+		eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1."
+		die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common"
+	fi
+}
+
+src_install() {
+	newbashcomp bash-autocomplete.sh clang
+
+	insinto /etc/clang
+	newins - gentoo-runtimes.cfg <<-EOF
+		# This file is initially generated by sys-devel/clang-runtime.
+		# It is used to control the default runtimes using by clang.
+
+		--rtlib=$(usex default-compiler-rt compiler-rt libgcc)
+		--unwindlib=$(usex default-compiler-rt libunwind libgcc)
+		--stdlib=$(usex default-libcxx libc++ libstdc++)
+		-fuse-ld=$(usex default-lld lld bfd)
+	EOF
+
+	newins - gentoo-gcc-install.cfg <<-EOF
+		# This file is maintained by gcc-config.
+		# It is used to specify the selected GCC installation.
+	EOF
+
+	newins - gentoo-common.cfg <<-EOF
+		# This file contains flags common to clang, clang++ and clang-cpp.
+		@gentoo-runtimes.cfg
+		@gentoo-gcc-install.cfg
+		@gentoo-hardened.cfg
+		# bug #870001
+		-include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h"
+	EOF
+
+	# Baseline hardening (bug #851111)
+	newins - gentoo-hardened.cfg <<-EOF
+		# Some of these options are added unconditionally, regardless of
+		# USE=hardened, for parity with sys-devel/gcc.
+		-fstack-clash-protection
+		-fstack-protector-strong
+		-fPIE
+		-include "${EPREFIX}/usr/include/gentoo/fortify.h"
+	EOF
+
+	dodir /usr/include/gentoo
+
+	cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die
+	/* __has_include is an extension, but it's fine, because this is only
+	for Clang anyway. */
+	#if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__)
+	# include <stdc-predef.h>
+	#endif
+	EOF
+
+	local fortify_level=$(usex hardened 3 2)
+	# We have to do this because glibc's headers warn if F_S is set
+	# without optimization and that would at the very least be very noisy
+	# during builds and at worst trigger many -Werror builds.
+	cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die
+	#ifdef __clang__
+	# pragma clang system_header
+	#endif
+	#ifndef _FORTIFY_SOURCE
+	# if defined(__has_feature)
+	#  define __GENTOO_HAS_FEATURE(x) __has_feature(x)
+	# else
+	#  define __GENTOO_HAS_FEATURE(x) 0
+	# endif
+	#
+	# if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
+	#  if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer)
+	#   define _FORTIFY_SOURCE ${fortify_level}
+	#  endif
+	# endif
+	# undef __GENTOO_HAS_FEATURE
+	#endif
+	EOF
+
+	if use hardened ; then
+		cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die
+			# Options below are conditional on USE=hardened.
+			-D_GLIBCXX_ASSERTIONS
+
+			# Analogue to GLIBCXX_ASSERTIONS
+			# https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode
+			-D_LIBCPP_ENABLE_ASSERTIONS=1
+		EOF
+	fi
+
+	if use stricter; then
+		newins - gentoo-stricter.cfg <<-EOF
+			# This file increases the strictness of older clang versions
+			# to match the newest upstream version.
+
+			# clang-16 defaults
+			-Werror=implicit-function-declaration
+			-Werror=implicit-int
+			-Werror=incompatible-function-pointer-types
+
+			# constructs banned by C2x
+			-Werror=deprecated-non-prototype
+
+			# deprecated but large blast radius
+			#-Werror=strict-prototypes
+		EOF
+
+		cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die
+			@gentoo-stricter.cfg
+		EOF
+	fi
+
+	local tool
+	for tool in clang{,++,-cpp}; do
+		newins - "${tool}.cfg" <<-EOF
+			# This configuration file is used by ${tool} driver.
+			@gentoo-common.cfg
+		EOF
+	done
+}
+
+pkg_preinst() {
+	if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc
+	then
+		local gcc_path=$(gcc-config --get-lib-path 2>/dev/null)
+		if [[ -n ${gcc_path} ]]; then
+			cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF
+				--gcc-install-dir="${gcc_path%%:*}"
+			EOF
+		fi
+	fi
+}
diff --git a/sys-devel/clang-common/clang-common-16.0.6.9999.ebuild b/sys-devel/clang-common/clang-common-16.0.6.9999.ebuild
deleted file mode 100644
index 51e0f70c6470..000000000000
--- a/sys-devel/clang-common/clang-common-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,190 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit bash-completion-r1 llvm.org
-
-DESCRIPTION="Common files shared between multiple slots of clang"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-KEYWORDS=""
-IUSE="
-	default-compiler-rt default-libcxx default-lld llvm-libunwind
-	hardened stricter
-"
-
-PDEPEND="
-	sys-devel/clang:*
-	default-compiler-rt? (
-		sys-devel/clang-runtime[compiler-rt]
-		llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] )
-		!llvm-libunwind? ( sys-libs/libunwind[static-libs] )
-	)
-	!default-compiler-rt? ( sys-devel/gcc )
-	default-libcxx? ( >=sys-libs/libcxx-${PV} )
-	!default-libcxx? ( sys-devel/gcc )
-	default-lld? ( sys-devel/lld )
-	!default-lld? ( sys-devel/binutils )
-"
-IDEPEND="
-	!default-compiler-rt? ( sys-devel/gcc-config )
-	!default-libcxx? ( sys-devel/gcc-config )
-"
-
-LLVM_COMPONENTS=( clang/utils )
-llvm.org_set_globals
-
-pkg_pretend() {
-	[[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return
-
-	local flag missing_flags=()
-	for flag in default-{compiler-rt,libcxx,lld}; do
-		if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then
-			missing_flags+=( "${flag}" )
-		fi
-	done
-
-	if [[ ${missing_flags[@]} ]]; then
-		eerror "It seems that you have the following flags set on sys-devel/clang:"
-		eerror
-		eerror "  ${missing_flags[*]}"
-		eerror
-		eerror "The default runtimes are now set via flags on sys-devel/clang-common."
-		eerror "The build is being aborted to prevent breakage.  Please either set"
-		eerror "the respective flags on this ebuild, e.g.:"
-		eerror
-		eerror "  sys-devel/clang-common ${missing_flags[*]}"
-		eerror
-		eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1."
-		die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common"
-	fi
-}
-
-src_install() {
-	newbashcomp bash-autocomplete.sh clang
-
-	insinto /etc/clang
-	newins - gentoo-runtimes.cfg <<-EOF
-		# This file is initially generated by sys-devel/clang-runtime.
-		# It is used to control the default runtimes using by clang.
-
-		--rtlib=$(usex default-compiler-rt compiler-rt libgcc)
-		--unwindlib=$(usex default-compiler-rt libunwind libgcc)
-		--stdlib=$(usex default-libcxx libc++ libstdc++)
-		-fuse-ld=$(usex default-lld lld bfd)
-	EOF
-
-	newins - gentoo-gcc-install.cfg <<-EOF
-		# This file is maintained by gcc-config.
-		# It is used to specify the selected GCC installation.
-	EOF
-
-	newins - gentoo-common.cfg <<-EOF
-		# This file contains flags common to clang, clang++ and clang-cpp.
-		@gentoo-runtimes.cfg
-		@gentoo-gcc-install.cfg
-		@gentoo-hardened.cfg
-		# bug #870001
-		-include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h"
-	EOF
-
-	# Baseline hardening (bug #851111)
-	newins - gentoo-hardened.cfg <<-EOF
-		# Some of these options are added unconditionally, regardless of
-		# USE=hardened, for parity with sys-devel/gcc.
-		-fstack-clash-protection
-		-fstack-protector-strong
-		-fPIE
-		-include "${EPREFIX}/usr/include/gentoo/fortify.h"
-	EOF
-
-	dodir /usr/include/gentoo
-
-	cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die
-	/* __has_include is an extension, but it's fine, because this is only
-	for Clang anyway. */
-	#if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__)
-	# include <stdc-predef.h>
-	#endif
-	EOF
-
-	local fortify_level=$(usex hardened 3 2)
-	# We have to do this because glibc's headers warn if F_S is set
-	# without optimization and that would at the very least be very noisy
-	# during builds and at worst trigger many -Werror builds.
-	cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die
-	#ifdef __clang__
-	# pragma clang system_header
-	#endif
-	#ifndef _FORTIFY_SOURCE
-	# if defined(__has_feature)
-	#  define __GENTOO_HAS_FEATURE(x) __has_feature(x)
-	# else
-	#  define __GENTOO_HAS_FEATURE(x) 0
-	# endif
-	#
-	# if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-	#  if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer)
-	#   define _FORTIFY_SOURCE ${fortify_level}
-	#  endif
-	# endif
-	# undef __GENTOO_HAS_FEATURE
-	#endif
-	EOF
-
-	if use hardened ; then
-		cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die
-			# Options below are conditional on USE=hardened.
-			-D_GLIBCXX_ASSERTIONS
-
-			# Analogue to GLIBCXX_ASSERTIONS
-			# https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode
-			-D_LIBCPP_ENABLE_ASSERTIONS=1
-		EOF
-	fi
-
-	if use stricter; then
-		newins - gentoo-stricter.cfg <<-EOF
-			# This file increases the strictness of older clang versions
-			# to match the newest upstream version.
-
-			# clang-16 defaults
-			-Werror=implicit-function-declaration
-			-Werror=implicit-int
-			-Werror=incompatible-function-pointer-types
-
-			# constructs banned by C2x
-			-Werror=deprecated-non-prototype
-
-			# deprecated but large blast radius
-			#-Werror=strict-prototypes
-		EOF
-
-		cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die
-			@gentoo-stricter.cfg
-		EOF
-	fi
-
-	local tool
-	for tool in clang{,++,-cpp}; do
-		newins - "${tool}.cfg" <<-EOF
-			# This configuration file is used by ${tool} driver.
-			@gentoo-common.cfg
-		EOF
-	done
-}
-
-pkg_preinst() {
-	if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc
-	then
-		local gcc_path=$(gcc-config --get-lib-path 2>/dev/null)
-		if [[ -n ${gcc_path} ]]; then
-			cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF
-				--gcc-install-dir="${gcc_path%%:*}"
-			EOF
-		fi
-	fi
-}
diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest
index 874e09fa7a8d..ddd03c7efca0 100644
--- a/sys-devel/clang-runtime/Manifest
+++ b/sys-devel/clang-runtime/Manifest
@@ -1,7 +1,7 @@
 EBUILD clang-runtime-14.0.6.ebuild 760 BLAKE2B 0f6cfb8536569ffe2a09305e71056309690ad1c8e92543e64025bd5e009eac35018ec22b2c0f80c12f3a527cc7e0bfe4ec1bfcb2dd9dea54106abf46b13e5592 SHA512 580efee12fe0e53447f5644fad248ebded8ae6cd8cb5871cb38bb3148091886b6fb9a57ac712d3158d5c3fc38c043b0bfbf62fc550a609752a42c23e605b0ded
 EBUILD clang-runtime-15.0.7.ebuild 759 BLAKE2B d7b481faffc4da0a6dc1b4e708322cd17cd497dc75363bdb89e7fbb1ecb2aecd9cbf91bdf816505476c7aca2ec7b6fb9ef178705e6b77361d21a7a270404a70a SHA512 8128acfc92b1601e93ffca1fd4233456f8a28fbc4cc65a1782da25df48abd3af82d0128b31f12b966ca02ab1eafcd28016c4443d9c7f1d28bc3f951cfff5e07f
-EBUILD clang-runtime-16.0.5.ebuild 1442 BLAKE2B ccd97064b84899371758ceab7640d2b9a3104e08dccbefc5523062437cec1358ab68773b96bbc8193d8cd52a2bac65e6687cb150127d953aa49ab7f8cb3dbcea SHA512 9b8639788a2bfab9fea6e717e684c4784ae6719ce8d6bb389d16d836df0b43d108be6c649b9aa17dfa60df7b3f490450d4d51e83dd80707467a844871b97535e
-EBUILD clang-runtime-16.0.6.9999.ebuild 1369 BLAKE2B f69af454137c9689bebc710a7a6988338bc715c68238367d55b5f01859244954b7ff8719ba285b64e76a578f063ab3f6325d5e9519ef5ebdb31592af1a276225 SHA512 436ecac7bb5ba46ca72ab48ea2bd8e30e2ee180218c0c3f14f41abd4e3b0445655ad033058bb78661b2095c5786ef644b538574d4ae2a9a8ee12fefc179f79db
+EBUILD clang-runtime-16.0.5.ebuild 1441 BLAKE2B 088c71fb6d97637ad0f1dee28b14241e7524cbba78111c48a405d00dc99815a476eb2433d9a1f50b27ea318dbacc2fe51fa0ecaa6971ef0b299e63c1aefb5079 SHA512 d0573e40085e4a61d3688db02faa9b3eae1a8040d6e09411b37845c9fb2d4aabefdd5ea8a38b4b747abfa8cee760720f75f5efa92935725774a243f70f03121d
+EBUILD clang-runtime-16.0.6.ebuild 1442 BLAKE2B ccd97064b84899371758ceab7640d2b9a3104e08dccbefc5523062437cec1358ab68773b96bbc8193d8cd52a2bac65e6687cb150127d953aa49ab7f8cb3dbcea SHA512 9b8639788a2bfab9fea6e717e684c4784ae6719ce8d6bb389d16d836df0b43d108be6c649b9aa17dfa60df7b3f490450d4d51e83dd80707467a844871b97535e
 EBUILD clang-runtime-17.0.0.9999.ebuild 1369 BLAKE2B f69af454137c9689bebc710a7a6988338bc715c68238367d55b5f01859244954b7ff8719ba285b64e76a578f063ab3f6325d5e9519ef5ebdb31592af1a276225 SHA512 436ecac7bb5ba46ca72ab48ea2bd8e30e2ee180218c0c3f14f41abd4e3b0445655ad033058bb78661b2095c5786ef644b538574d4ae2a9a8ee12fefc179f79db
 EBUILD clang-runtime-17.0.0_pre20230609.ebuild 1369 BLAKE2B f69af454137c9689bebc710a7a6988338bc715c68238367d55b5f01859244954b7ff8719ba285b64e76a578f063ab3f6325d5e9519ef5ebdb31592af1a276225 SHA512 436ecac7bb5ba46ca72ab48ea2bd8e30e2ee180218c0c3f14f41abd4e3b0445655ad033058bb78661b2095c5786ef644b538574d4ae2a9a8ee12fefc179f79db
 MISC metadata.xml 661 BLAKE2B 24688c511713ea102b83c71d226d519981b3aee0e05ef7a56d6a80be829efd843194e45cb4fd801f0bb976b6f1976386d6a2b05d2bc907fe2aa42b22b85b7d1f SHA512 2b5ab8783c90795f2e7d1673d876048ed9745f4911fb7a860df56deac13a6dfeba4581a84562eae54eff757c45042ca3fab75c7800313ae61df9ce69780a9294
diff --git a/sys-devel/clang-runtime/clang-runtime-16.0.5.ebuild b/sys-devel/clang-runtime/clang-runtime-16.0.5.ebuild
index 6483c7c0c78e..9a1a1cef82db 100644
--- a/sys-devel/clang-runtime/clang-runtime-16.0.5.ebuild
+++ b/sys-devel/clang-runtime/clang-runtime-16.0.5.ebuild
@@ -10,7 +10,7 @@ HOMEPAGE="https://clang.llvm.org/"
 
 LICENSE="metapackage"
 SLOT="${PV%%.*}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
 IUSE="+compiler-rt libcxx openmp +sanitize"
 REQUIRED_USE="sanitize? ( compiler-rt )"
 
diff --git a/sys-devel/clang-runtime/clang-runtime-16.0.6.9999.ebuild b/sys-devel/clang-runtime/clang-runtime-16.0.6.9999.ebuild
deleted file mode 100644
index 67b42357665e..000000000000
--- a/sys-devel/clang-runtime/clang-runtime-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit multilib-build toolchain-funcs
-
-DESCRIPTION="Meta-ebuild for clang runtime libraries"
-HOMEPAGE="https://clang.llvm.org/"
-
-LICENSE="metapackage"
-SLOT="${PV%%.*}"
-KEYWORDS=""
-IUSE="+compiler-rt libcxx openmp +sanitize"
-REQUIRED_USE="sanitize? ( compiler-rt )"
-PROPERTIES="live"
-
-RDEPEND="
-	compiler-rt? (
-		~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?]
-		sanitize? (
-			~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?]
-		)
-	)
-	libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] )
-	openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] )
-"
-
-pkg_pretend() {
-	if tc-is-clang; then
-		ewarn "You seem to be using clang as a system compiler.  As of clang-16,"
-		ewarn "upstream has turned a few warnings that commonly occur during"
-		ewarn "configure script runs into errors by default.  This causes some"
-		ewarn "configure tests to start failing, sometimes resulting in silent"
-		ewarn "breakage, missing functionality or runtime misbehavior.  It is"
-		ewarn "not yet clear whether the change will remain or be reverted."
-		ewarn
-		ewarn "For more information, please see:"
-		ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213"
-	fi
-}
diff --git a/sys-devel/clang-runtime/clang-runtime-16.0.6.ebuild b/sys-devel/clang-runtime/clang-runtime-16.0.6.ebuild
new file mode 100644
index 000000000000..6483c7c0c78e
--- /dev/null
+++ b/sys-devel/clang-runtime/clang-runtime-16.0.6.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-build toolchain-funcs
+
+DESCRIPTION="Meta-ebuild for clang runtime libraries"
+HOMEPAGE="https://clang.llvm.org/"
+
+LICENSE="metapackage"
+SLOT="${PV%%.*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+IUSE="+compiler-rt libcxx openmp +sanitize"
+REQUIRED_USE="sanitize? ( compiler-rt )"
+
+RDEPEND="
+	compiler-rt? (
+		~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?]
+		sanitize? (
+			~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?]
+		)
+	)
+	libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] )
+	openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] )
+"
+
+pkg_pretend() {
+	if tc-is-clang; then
+		ewarn "You seem to be using clang as a system compiler.  As of clang-16,"
+		ewarn "upstream has turned a few warnings that commonly occur during"
+		ewarn "configure script runs into errors by default.  This causes some"
+		ewarn "configure tests to start failing, sometimes resulting in silent"
+		ewarn "breakage, missing functionality or runtime misbehavior.  It is"
+		ewarn "not yet clear whether the change will remain or be reverted."
+		ewarn
+		ewarn "For more information, please see:"
+		ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213"
+	fi
+}
diff --git a/sys-devel/clang-toolchain-symlinks/Manifest b/sys-devel/clang-toolchain-symlinks/Manifest
index 0de3206e23a1..26f4ea86b869 100644
--- a/sys-devel/clang-toolchain-symlinks/Manifest
+++ b/sys-devel/clang-toolchain-symlinks/Manifest
@@ -1,5 +1,5 @@
 EBUILD clang-toolchain-symlinks-14-r2.ebuild 1154 BLAKE2B 1da81bdc43afd21ad3f45e3ede1decf1f2eb0aa0dd5a451b28b06a74837cb1354e785784d723a770b7fd3e4dfaeb3b7d095d8579ea07cc798c33d65f9fd6fb9f SHA512 f02f2c7c21def93692503fceae45f8aa6abd608ad99b3be0a63a85f80b54899b201457ee56666161c87d0039bc512eef2bbf6f819807f236e52ac2d88f4bbe54
 EBUILD clang-toolchain-symlinks-15-r2.ebuild 1147 BLAKE2B a3676de65810503e7009f0ae8df1c8233f02518decf27d602096c946081f459d4350541b807bb07e83a740080ac89c94482b6c48c7cd570fce4af4c083edb60b SHA512 cdd69cc55c5ed323852a031cda463504bf1de0676a3fbda80853d63c6b7fce28531940c4a47bc34a6c99f289038d65ba510dc314026a16795a060a0794b522aa
-EBUILD clang-toolchain-symlinks-16-r2.ebuild 1166 BLAKE2B 3e5b3068f28755e5d666511586c3609d700305949b4bcc2c6fa484dc3a8a6c1b9ef39b50dabc48306301a09eaa67b3d5e5e8765f5f235a3bc07e55538b5f44fb SHA512 1f6ca94977eb4d8366f1fbad7f1b9caad2325d56f43d9f157c602932cd7f3c2cd40253a73bc3002d1e008b8cb64d6787aeb6716e47a0a8fcb747144acb88c22c
+EBUILD clang-toolchain-symlinks-16-r2.ebuild 1165 BLAKE2B 9d02b9757b971612ec86e37c601b56deefe4dfe95065e9ff19c4e6a44baaefb3c20b3c3bab0cb8af63ca9fd4c247346019bb72497e0da186e98688ce3fd9938b SHA512 99c4a700fdae0c4d76cb26a6341b0aa85b4a6bc26d313b09f98153f30b23bce9d5a1a7ecb8bd364d7b7dc880dcc85946b352096d9eb4542ba353cf47d6837cb1
 EBUILD clang-toolchain-symlinks-17.ebuild 1104 BLAKE2B a22bdfe7dad1c912b254f692ba44da6931a52602d4ba448b015d9655103d5ec6faab4a5941bd8e8689f9528fc5adb16beaffd7123dfa451eebce5f8cca4adfd4 SHA512 a6e2494676fc92a1f0b5db87845a5db1904d50111d99340dbc000fe630e40da888d50287fbec79ba35b8815fcdf00b151eedb1aa806b6ea1b5a0d5e041f0e400
 MISC metadata.xml 904 BLAKE2B d2c8a31355b0f3bea6c5b4c72d198f40bf14b6908f5a3f765b48fffb2ba3e4f09a8bb37c87ea4e7d9b4e1de0a3ad2c80bdca6feb45538c973119f27ba6329ad8 SHA512 846548593c071d6905b56984c6924086d5f03929c813be986c89c57a6924d1976975b29769ee60a2796287753aa3453608794af8d36cf48b76c55920778c27d4
diff --git a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-16-r2.ebuild b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-16-r2.ebuild
index 86cc794fd88f..6f3a00f54708 100644
--- a/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-16-r2.ebuild
+++ b/sys-devel/clang-toolchain-symlinks/clang-toolchain-symlinks-16-r2.ebuild
@@ -12,7 +12,7 @@ S=${WORKDIR}
 
 LICENSE="public-domain"
 SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
 IUSE="gcc-symlinks multilib-symlinks +native-symlinks"
 
 # Blocker for bug #872416
diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest
index a2157afb1bad..fde1863fc092 100644
--- a/sys-devel/clang/Manifest
+++ b/sys-devel/clang/Manifest
@@ -5,19 +5,22 @@ DIST llvm-gentoo-patchset-14.0.6-r2.tar.xz 16120 BLAKE2B e12e522fdb7ba505693c679
 DIST llvm-gentoo-patchset-14.0.6-r4.tar.xz 19360 BLAKE2B 814dd617d237b0bd9c80bdd9d921196b8f93248b731083e79455d4609a05dd15b6847fc227359624abce683ecdaadaefea71dc9b65b7edd1fc3912123fa55054 SHA512 9ac57abc87a63cf31ecd021e6dd44f5f11cd6136fa3b92e89c52a6d13e0ed471f88e6e96160baeac4615eedff7943048a35a98c8d37387894c9c2d1f5df277ce
 DIST llvm-gentoo-patchset-15.0.7-r3.tar.xz 24268 BLAKE2B 6531ae385ecea87bc26dba8ce19b4cde8ff224c80fd81f04c6ded131e305ecfdeb8d29ebd3b68a641d240805dc83eb0ebc7cc85124f02ad0ee66e0f201b91d7e SHA512 66cb33f8b423736b990fb75d4f2d1e5f14c0b03308f403297204dd1a352d72f85f34220fd66d3de5d6df328cdf2ffce03c2a111cb0bb57791cf68a88069ac7df
 DIST llvm-gentoo-patchset-15.0.7.tar.xz 19300 BLAKE2B b70e81d744c2eba5cd851e7b690ce8979b3064973f522be7c93bfb541860000a4bc8b17219f8788dfc8a527217dd13946cf7836640698ddd3d4b3fde493dfbf8 SHA512 daffff6ae4a0874aff1a423b4bb36701ecb5a35a36ae91d4ed7fda58b83e50ffcdc30498c84be4711fd3e1f227bf312dbe930019203e0a131944439af2aa94f7
+DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825
 DIST llvm-project-14.0.6.src.tar.xz 105618228 BLAKE2B ee67c5407df8cef493b9c0004f15e428f22a536a17e5f4e3eb29a003b8a8ec0abe0fa3e072591161d5f30ef7d8867c1ce34d1b341ad858e93c00263499941a99 SHA512 6fc6eeb60fac698702d1aac495fc0161eb7216a1f8db2020af8fccec5837831f7cc20dc2a169bf4f0b5f520748280b4a86621f3697d622aa58faaa45dbfaad13
 DIST llvm-project-14.0.6.src.tar.xz.sig 566 BLAKE2B cb658ad43d8ab6c43a5773aedadf0569c97b5ee4b1bd58eceb10e1879a30880c741c3d66bedd462c892309b688fb7b2673115a62d1f74d71ee375a578de9547f SHA512 b4a7b368532a7a4a24376cfa7db8f6d3478f6d4446474342fc00b474ecf466330cd0f16783209263c4c72d5fc7ddedfb11b95578842e700cfb7ee0bb34cc95d6
 DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.5.src.tar.xz 118000368 BLAKE2B 9f84e6bab450dc8d6379771afbca5cddc6fbad6c9728726f7158f290ab87d464ff657e89e1c8fc3c474362cc865ff13c5d55ef758c848ea3e660d732cb2fdefa SHA512 7008e7e9c8c2246fe98ba3f0c0fa91e41c88c4da427bf1cfdcce7ef57e5ea838efe7c58c523a7d1708e70d64a4338afe16d06fba2fc7ac5a6c19ca3d6ee41e99
 DIST llvm-project-16.0.5.src.tar.xz.sig 566 BLAKE2B 4c96f294f350e0086f8504a54c3387308c60efb573c8def40aec45b1918d43e36c44bafb0823625b6cefa5d99b3aacd7823d6c92c7a64a737653d5b51839a924 SHA512 4550c7c6a1b6ea603d1499aba5aca746f3948a00e7567604f5e7dc3b215a34357bad382a7ebea1f6cd7952841cb75a0dfbe2c278a8c6fcb630a5035b3e16e869
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
 DIST llvm-project-62c0bdabfa32f6e32b17b45425b15309db340dfb.tar.gz 190948645 BLAKE2B f41d8ea32e189ef4641e42628fb516e307c9a6fcf65af537eb9fc0d3186591b062c5e85c9e935511ef706f28c6994a774a4e3f36ff54d79aaac7b293a6168625 SHA512 55a4cbfec3a496c1918aa614e5bdee368e4d0b6641c946d8bf8b828ab4bf4d9b29dbe96401a172079d70f924f5e513428fe990c65b556a0a860802cb13f5e3a0
 EBUILD clang-14.0.6-r1.ebuild 12014 BLAKE2B 0f9eed7779a5b9aa8f92002f6f4d8e22e7baf3d3f6d1930e4716abf3aa00d866f68a682dc2a404655f53800e26c8b388da552184da6943287b2d91c5c1c2672b SHA512 c5e46f1044604f4e41cdb6c42d2079096c0bcdd396d99f8e95a6b5b66918e3519e4226741202f716fa5f53295188ec2bfcec66ae32480a8e10b4ab18bdb880ab
 EBUILD clang-14.0.6-r4.ebuild 11945 BLAKE2B 1f14f89997a862e04b0d9042c6d9c698c2cd455ab3a7dc3473af08137566e3c26ac05cf818ba8b12113c38cbd0b3c0d48836ed6b13216821614d7eb7eb1260c6 SHA512 37ee0684d6ae0dfb4e8cb0da683dec4996f8bad1762e3d8ffd1e4bf5a01e2c6cc90dac76a26edfb558e458b50be7ac535f71ea2b3578d6e58e388dab9661b27b
 EBUILD clang-15.0.7-r1.ebuild 12617 BLAKE2B 780db8dc3c92efab35280d32f6b7d4ffcea912d7839b995a18aa603d0cf59df1199eabd53eb5a475e67da7a45e10fdd08e9879b871a25672f135dbdb001a5f46 SHA512 f6302415c9a4fb8571613ff5ebea4096f1318333ba4bc0f3c0b63b04eb0d10755c4555f55186875db0d34bb5d2c0b245b758aff387b97033bc643a1a291d1195
 EBUILD clang-15.0.7-r3.ebuild 12552 BLAKE2B 1702065ffe0da6dbf809a82f0f0ec9e84daf7b0c3c4e9fb6d3c8eb320cf0034bfa6197f70f3752b3b58b841c27a7d8e00ccdd19b68f17a25fb54e203e9a66769 SHA512 f93df89921be88cd2bee7ba7d3aae0013db0b35f3f5e8cfac188fb5462a963afb9ce50b69b2046dbbe50d9bbf77532effb639e129176d986bb0c98d3106da3fb
-EBUILD clang-16.0.5.ebuild 12448 BLAKE2B 783048eba466468c3a4ab010b08f58cd0577a198f775cffc4448c90c3cf8ac572362c40b845d929a6ea7931bf7b67a18f7a5634be4342be330e568c5f87bc5ac SHA512 e6191f0e4d007158c258bcd6460a3c59a8f5fce00dc90501a578f0662d0b0d28acebd3749fa47b6ad281a9437f8d0ee264c4c3e55c2aac6d058855dd92409029
-EBUILD clang-16.0.6.9999.ebuild 12368 BLAKE2B a34bca1c8ea4969082a6c7df015f186bfad9f322ea6460f155c2f9ef0cabd1f28a6746216fd8da9ddb75dfc1712aaa07108a9efcb2475aa6c7d6d7199daa4f53 SHA512 1108a2f5573df7b41a304115994a46fc4dd86710d9002478502edf5f2858a3cb2883b99560705047738ab0d82973e7bb06b8420a9d49f9eadd0ed44723ac5d76
+EBUILD clang-16.0.5.ebuild 12447 BLAKE2B a97a3c6484d010df2ae201d724d2887d830158b941a3542e9d17da98ed4c6517e06efe270c9bb8fb959bbb95d701e1d0c0e1d9c1d98d791172fb2293bc9c1f3f SHA512 afeec4fa232bbeb3305aea8348791c0d4207abf2adfdac59df6c6be026cf2f938abab21e4f06a8c8fa17fc29328dec613cc7c19ff1741f865b1a55e026af0ac7
+EBUILD clang-16.0.6.ebuild 12468 BLAKE2B 24564cde256dfd7c76a4b2ab9c6e0d62721f2d98050faf9201a327000db39554cbd361e6da18abb4dee8cf780ecaa8ce02aad417b879036960aad2395384c885 SHA512 1cbdb203994dc399294015bd5241a0eebe6b6282bb54128ec2feedd89ed318a7595f595983160f9435b4f4dec5476092d68191ed69fb888ea051d87674f896b1
 EBUILD clang-17.0.0.9999.ebuild 12251 BLAKE2B ec3960164edb2ade87849f0abd8b7c3fc303279d7c747c4dea37d76b47ab28019f13e1494b00b92567f016a20d4ac921645c4a97383375fd841be1bc44aad49a SHA512 402bcc444aabc9e9a77e564b3059c411c22e969e8779f88821faaffb449c0432a9c20ba37561663404e2c69a2a89a066bc28a21cdafa2f8458858eb4d6b4934e
 EBUILD clang-17.0.0_pre20230609.ebuild 12065 BLAKE2B b5915e8424c143fb40cab1c575c8b71e92d38afce92d107ceb7fac76794a135f7695287b4921d430421c040aeac5c77fbc9b69c6c928890ec19d4a1d6002e7df SHA512 fbe566c724192ba3da98bfc065bacc95c0675fd7e2f5e22f9c7ecaa7dff7fa24e549fca0bf4c7ce0fdf58605720e697ac836f4d7b13ae916eccce1d01372e76d
 MISC metadata.xml 1600 BLAKE2B 8e49e099132445cf695e904acad8a699f3d8c4c1e4cd6ba9d0b97180dfa5b67e9c30b00d1e4cb6cd2f61b27f022accc8d6ee889c6569fc58fbc058186ad216fc SHA512 96b7cf4988ff1fd923ec87311caed458b64888b5acaaf20cc1ad893f2a963158f7f59398f9fd4f9e65cab3df265c0d002048ff874f7a76b94f36377bf9e8f5f6
diff --git a/sys-devel/clang/clang-16.0.5.ebuild b/sys-devel/clang/clang-16.0.5.ebuild
index df30d842374c..6ca980afb633 100644
--- a/sys-devel/clang/clang-16.0.5.ebuild
+++ b/sys-devel/clang/clang-16.0.5.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT"
 SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
 IUSE="debug doc +extra ieee-long-double +pie +static-analyzer test xml"
 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 RESTRICT="!test? ( test )"
diff --git a/sys-devel/clang/clang-16.0.6.9999.ebuild b/sys-devel/clang/clang-16.0.6.9999.ebuild
deleted file mode 100644
index 8a26831b2e61..000000000000
--- a/sys-devel/clang/clang-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,483 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit cmake flag-o-matic llvm llvm.org multilib multilib-minimal
-inherit prefix python-single-r1 toolchain-funcs
-
-DESCRIPTION="C language family frontend for LLVM"
-HOMEPAGE="https://llvm.org/"
-
-# MSVCSetupApi.h: MIT
-# sorttable.js: MIT
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT"
-SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS=""
-IUSE="debug doc +extra ieee-long-double +pie +static-analyzer test xml"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RESTRICT="!test? ( test )"
-
-DEPEND="
-	~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}]
-	static-analyzer? ( dev-lang/perl:* )
-	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
-"
-
-RDEPEND="
-	${PYTHON_DEPS}
-	${DEPEND}
-	>=sys-devel/clang-common-${PV}
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	>=dev-util/cmake-3.16
-	doc? ( $(python_gen_cond_dep '
-		dev-python/recommonmark[${PYTHON_USEDEP}]
-		dev-python/sphinx[${PYTHON_USEDEP}]
-	') )
-	xml? ( virtual/pkgconfig )
-"
-PDEPEND="
-	~sys-devel/clang-runtime-${PV}
-	sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR}
-"
-
-LLVM_COMPONENTS=(
-	clang clang-tools-extra cmake
-	llvm/lib/Transforms/Hello
-)
-LLVM_MANPAGES=1
-LLVM_TEST_COMPONENTS=(
-	llvm/lib/Testing
-	llvm/utils
-	third-party
-)
-LLVM_USE_TARGETS=llvm
-llvm.org_set_globals
-
-# Multilib notes:
-# 1. ABI_* flags control ABIs libclang* is built for only.
-# 2. clang is always capable of compiling code for all ABIs for enabled
-#    target. However, you will need appropriate crt* files (installed
-#    e.g. by sys-devel/gcc and sys-libs/glibc).
-# 3. ${CHOST}-clang wrappers are always installed for all ABIs included
-#    in the current profile (i.e. alike supported by sys-devel/gcc).
-#
-# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need
-# multilib clang* libraries (not runtime, not wrappers).
-
-pkg_setup() {
-	LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	# create extra parent dir for relative CLANG_RESOURCE_DIR access
-	mkdir -p x/y || die
-	BUILD_DIR=${WORKDIR}/x/y/clang
-
-	llvm.org_src_prepare
-
-	# add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch)
-	eprefixify \
-		lib/Lex/InitHeaderSearch.cpp \
-		lib/Driver/ToolChains/Darwin.cpp || die
-
-	if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then
-		sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die
-	fi
-}
-
-check_distribution_components() {
-	if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
-		local all_targets=() my_targets=() l
-		cd "${BUILD_DIR}" || die
-
-		while read -r l; do
-			if [[ ${l} == install-*-stripped:* ]]; then
-				l=${l#install-}
-				l=${l%%-stripped*}
-
-				case ${l} in
-					# meta-targets
-					clang-libraries|distribution)
-						continue
-						;;
-					# tools
-					clang|clangd|clang-*)
-						;;
-					# static libraries
-					clang*|findAllSymbols)
-						continue
-						;;
-					# conditional to USE=doc
-					docs-clang-html|docs-clang-tools-html)
-						use doc || continue
-						;;
-				esac
-
-				all_targets+=( "${l}" )
-			fi
-		done < <(${NINJA} -t targets all)
-
-		while read -r l; do
-			my_targets+=( "${l}" )
-		done < <(get_distribution_components $"\n")
-
-		local add=() remove=()
-		for l in "${all_targets[@]}"; do
-			if ! has "${l}" "${my_targets[@]}"; then
-				add+=( "${l}" )
-			fi
-		done
-		for l in "${my_targets[@]}"; do
-			if ! has "${l}" "${all_targets[@]}"; then
-				remove+=( "${l}" )
-			fi
-		done
-
-		if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
-			eqawarn "get_distribution_components() is outdated!"
-			eqawarn "   Add: ${add[*]}"
-			eqawarn "Remove: ${remove[*]}"
-		fi
-		cd - >/dev/null || die
-	fi
-}
-
-get_distribution_components() {
-	local sep=${1-;}
-
-	local out=(
-		# common stuff
-		clang-cmake-exports
-		clang-headers
-		clang-resource-headers
-		libclang-headers
-
-		aarch64-resource-headers
-		arm-common-resource-headers
-		arm-resource-headers
-		core-resource-headers
-		cuda-resource-headers
-		hexagon-resource-headers
-		hip-resource-headers
-		hlsl-resource-headers
-		mips-resource-headers
-		opencl-resource-headers
-		openmp-resource-headers
-		ppc-htm-resource-headers
-		ppc-resource-headers
-		riscv-resource-headers
-		systemz-resource-headers
-		utility-resource-headers
-		ve-resource-headers
-		webassembly-resource-headers
-		windows-resource-headers
-		x86-resource-headers
-
-		# libs
-		clang-cpp
-		libclang
-	)
-
-	if multilib_is_native_abi; then
-		out+=(
-			# common stuff
-			bash-autocomplete
-			libclang-python-bindings
-
-			# tools
-			amdgpu-arch
-			c-index-test
-			clang
-			clang-format
-			clang-linker-wrapper
-			clang-offload-bundler
-			clang-offload-packager
-			clang-refactor
-			clang-repl
-			clang-rename
-			clang-scan-deps
-			diagtool
-			hmaptool
-			nvptx-arch
-
-			# needed for cross-compiling Clang
-			clang-tblgen
-		)
-
-		if use extra; then
-			out+=(
-				# extra tools
-				clang-apply-replacements
-				clang-change-namespace
-				clang-doc
-				clang-include-cleaner
-				clang-include-fixer
-				clang-move
-				clang-pseudo
-				clang-query
-				clang-reorder-fields
-				clang-tidy
-				clang-tidy-headers
-				clangd
-				find-all-symbols
-				modularize
-				pp-trace
-			)
-		fi
-
-		if llvm_are_manpages_built; then
-			out+=( docs-clang-man )
-			use extra && out+=( docs-clang-tools-man )
-		fi
-
-		if use doc; then
-			out+=( docs-clang-html )
-			use extra && out+=( docs-clang-tools-html )
-		fi
-
-		use static-analyzer && out+=(
-			clang-check
-			clang-extdef-mapping
-			scan-build
-			scan-build-py
-			scan-view
-		)
-	fi
-
-	printf "%s${sep}" "${out[@]}"
-}
-
-multilib_src_configure() {
-	tc-is-gcc && filter-lto # GCC miscompiles LLVM, bug #873670
-
-	local mycmakeargs=(
-		-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-		-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-		-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
-		# relative to bindir
-		-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"
-
-		-DBUILD_SHARED_LIBS=OFF
-		-DCLANG_LINK_CLANG_DYLIB=ON
-		-DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
-		-DCLANG_INCLUDE_TESTS=$(usex test)
-
-		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
-
-		# these are not propagated reliably, so redefine them
-		-DLLVM_ENABLE_EH=ON
-		-DLLVM_ENABLE_RTTI=ON
-
-		-DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=$(usex !xml)
-		# libgomp support fails to find headers without explicit -I
-		# furthermore, it provides only syntax checking
-		-DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
-
-		# disable using CUDA to autodetect GPU, just build for all
-		-DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON
-		# disable linking to HSA to avoid automagic dep,
-		# load it dynamically instead
-		-DCMAKE_DISABLE_FIND_PACKAGE_hsa-runtime64=ON
-
-		-DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie)
-
-		-DCLANG_ENABLE_ARCMT=$(usex static-analyzer)
-		-DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer)
-
-		-DPython3_EXECUTABLE="${PYTHON}"
-	)
-
-	if ! use elibc_musl; then
-		mycmakeargs+=(
-			-DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double)
-		)
-	fi
-
-	use test && mycmakeargs+=(
-		-DLLVM_BUILD_TESTS=ON
-		-DLLVM_LIT_ARGS="$(get_lit_flags)"
-	)
-
-	if multilib_is_native_abi; then
-		local build_docs=OFF
-		if llvm_are_manpages_built; then
-			build_docs=ON
-			mycmakeargs+=(
-				-DLLVM_BUILD_DOCS=ON
-				-DLLVM_ENABLE_SPHINX=ON
-				-DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
-				-DSPHINX_WARNINGS_AS_ERRORS=OFF
-			)
-			if use extra; then
-				mycmakeargs+=(
-					-DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra"
-				)
-			fi
-		fi
-		mycmakeargs+=(
-			-DCLANG_INCLUDE_DOCS=${build_docs}
-		)
-	fi
-	if multilib_native_use extra; then
-		mycmakeargs+=(
-			-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra
-			-DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs}
-		)
-	else
-		mycmakeargs+=(
-			-DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF
-		)
-	fi
-
-	if [[ -n ${EPREFIX} ]]; then
-		mycmakeargs+=(
-			-DGCC_INSTALL_PREFIX="${EPREFIX}/usr"
-		)
-	fi
-
-	if tc-is-cross-compiler; then
-		has_version -b sys-devel/clang:${LLVM_MAJOR} ||
-			die "sys-devel/clang:${LLVM_MAJOR} is required on the build host."
-		local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin
-		mycmakeargs+=(
-			-DLLVM_TOOLS_BINARY_DIR="${tools_bin}"
-			-DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen
-		)
-	fi
-
-	# LLVM can have very high memory consumption while linking,
-	# exhausting the limit on 32-bit linker executable
-	use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory"
-
-	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
-	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-	cmake_src_configure
-
-	multilib_is_native_abi && check_distribution_components
-}
-
-multilib_src_compile() {
-	cmake_build distribution
-
-	# provide a symlink for tests
-	if [[ ! -L ${WORKDIR}/lib/clang ]]; then
-		mkdir -p "${WORKDIR}"/lib || die
-		ln -s "${BUILD_DIR}/$(get_libdir)/clang" "${WORKDIR}"/lib/clang || die
-	fi
-}
-
-multilib_src_test() {
-	# respect TMPDIR!
-	local -x LIT_PRESERVES_TMP=1
-	local test_targets=( check-clang )
-	if multilib_native_use extra; then
-		test_targets+=(
-			check-clang-tools
-			check-clangd
-		)
-	fi
-	cmake_build "${test_targets[@]}"
-}
-
-src_install() {
-	MULTILIB_WRAPPED_HEADERS=(
-		/usr/include/clang/Config/config.h
-	)
-
-	multilib-minimal_src_install
-
-	# Move runtime headers to /usr/lib/clang, where they belong
-	mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die
-	# move (remaining) wrapped headers back
-	if use extra; then
-		mv "${T}"/clang-tidy "${ED}"/usr/include/ || die
-	fi
-	mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die
-
-	# Apply CHOST and version suffix to clang tools
-	local clang_tools=( clang clang++ clang-cl clang-cpp )
-	local abi i
-
-	# cmake gives us:
-	# - clang-X
-	# - clang -> clang-X
-	# - clang++, clang-cl, clang-cpp -> clang
-	# we want to have:
-	# - clang-X
-	# - clang++-X, clang-cl-X, clang-cpp-X -> clang-X
-	# - clang, clang++, clang-cl, clang-cpp -> clang*-X
-	# also in CHOST variant
-	for i in "${clang_tools[@]:1}"; do
-		rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die
-		dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}"
-		dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}"
-	done
-
-	# now create target symlinks for all supported ABIs
-	for abi in $(get_all_abis); do
-		local abi_chost=$(get_abi_CHOST "${abi}")
-		for i in "${clang_tools[@]}"; do
-			dosym "${i}-${LLVM_MAJOR}" \
-				"/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}"
-			dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \
-				"/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}"
-		done
-	done
-}
-
-multilib_src_install() {
-	DESTDIR=${D} cmake_build install-distribution
-
-	# move headers to /usr/include for wrapping & ABI mismatch checks
-	# (also drop the version suffix from runtime headers)
-	rm -rf "${ED}"/usr/include || die
-	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die
-	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/clang "${ED}"/usr/include/clangrt || die
-	if multilib_native_use extra; then
-		# don't wrap clang-tidy headers, the list is too long
-		# (they're fine for non-native ABI but enabling the targets is problematic)
-		mv "${ED}"/usr/include/clang-tidy "${T}/" || die
-	fi
-}
-
-multilib_src_install_all() {
-	python_fix_shebang "${ED}"
-	if use static-analyzer; then
-		python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view
-	fi
-
-	docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-	llvm_install_manpages
-	# match 'html' non-compression
-	use doc && docompress -x "/usr/share/doc/${PF}/tools-extra"
-	# +x for some reason; TODO: investigate
-	use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1"
-}
-
-pkg_postinst() {
-	if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
-		eselect compiler-shadow update all
-	fi
-
-	elog "You can find additional utility scripts in:"
-	elog "  ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang"
-	if use extra; then
-		elog "Some of them are vim integration scripts (with instructions inside)."
-		elog "The run-clang-tidy.py script requires the following additional package:"
-		elog "  dev-python/pyyaml"
-	fi
-}
-
-pkg_postrm() {
-	if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
-		eselect compiler-shadow clean all
-	fi
-}
diff --git a/sys-devel/clang/clang-16.0.6.ebuild b/sys-devel/clang/clang-16.0.6.ebuild
new file mode 100644
index 000000000000..b1a222068825
--- /dev/null
+++ b/sys-devel/clang/clang-16.0.6.ebuild
@@ -0,0 +1,484 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit cmake flag-o-matic llvm llvm.org multilib multilib-minimal
+inherit prefix python-single-r1 toolchain-funcs
+
+DESCRIPTION="C language family frontend for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+# MSVCSetupApi.h: MIT
+# sorttable.js: MIT
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT"
+SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
+IUSE="debug doc +extra ieee-long-double +pie +static-analyzer test xml"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}]
+	static-analyzer? ( dev-lang/perl:* )
+	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
+"
+
+RDEPEND="
+	${PYTHON_DEPS}
+	${DEPEND}
+	>=sys-devel/clang-common-${PV}
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	>=dev-util/cmake-3.16
+	doc? ( $(python_gen_cond_dep '
+		dev-python/recommonmark[${PYTHON_USEDEP}]
+		dev-python/sphinx[${PYTHON_USEDEP}]
+	') )
+	xml? ( virtual/pkgconfig )
+"
+PDEPEND="
+	~sys-devel/clang-runtime-${PV}
+	sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR}
+"
+
+LLVM_COMPONENTS=(
+	clang clang-tools-extra cmake
+	llvm/lib/Transforms/Hello
+)
+LLVM_MANPAGES=1
+LLVM_TEST_COMPONENTS=(
+	llvm/lib/Testing
+	llvm/utils
+	third-party
+)
+LLVM_PATCHSET=${PV}
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+# Multilib notes:
+# 1. ABI_* flags control ABIs libclang* is built for only.
+# 2. clang is always capable of compiling code for all ABIs for enabled
+#    target. However, you will need appropriate crt* files (installed
+#    e.g. by sys-devel/gcc and sys-libs/glibc).
+# 3. ${CHOST}-clang wrappers are always installed for all ABIs included
+#    in the current profile (i.e. alike supported by sys-devel/gcc).
+#
+# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need
+# multilib clang* libraries (not runtime, not wrappers).
+
+pkg_setup() {
+	LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	# create extra parent dir for relative CLANG_RESOURCE_DIR access
+	mkdir -p x/y || die
+	BUILD_DIR=${WORKDIR}/x/y/clang
+
+	llvm.org_src_prepare
+
+	# add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch)
+	eprefixify \
+		lib/Lex/InitHeaderSearch.cpp \
+		lib/Driver/ToolChains/Darwin.cpp || die
+
+	if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then
+		sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die
+	fi
+}
+
+check_distribution_components() {
+	if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
+		local all_targets=() my_targets=() l
+		cd "${BUILD_DIR}" || die
+
+		while read -r l; do
+			if [[ ${l} == install-*-stripped:* ]]; then
+				l=${l#install-}
+				l=${l%%-stripped*}
+
+				case ${l} in
+					# meta-targets
+					clang-libraries|distribution)
+						continue
+						;;
+					# tools
+					clang|clangd|clang-*)
+						;;
+					# static libraries
+					clang*|findAllSymbols)
+						continue
+						;;
+					# conditional to USE=doc
+					docs-clang-html|docs-clang-tools-html)
+						use doc || continue
+						;;
+				esac
+
+				all_targets+=( "${l}" )
+			fi
+		done < <(${NINJA} -t targets all)
+
+		while read -r l; do
+			my_targets+=( "${l}" )
+		done < <(get_distribution_components $"\n")
+
+		local add=() remove=()
+		for l in "${all_targets[@]}"; do
+			if ! has "${l}" "${my_targets[@]}"; then
+				add+=( "${l}" )
+			fi
+		done
+		for l in "${my_targets[@]}"; do
+			if ! has "${l}" "${all_targets[@]}"; then
+				remove+=( "${l}" )
+			fi
+		done
+
+		if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
+			eqawarn "get_distribution_components() is outdated!"
+			eqawarn "   Add: ${add[*]}"
+			eqawarn "Remove: ${remove[*]}"
+		fi
+		cd - >/dev/null || die
+	fi
+}
+
+get_distribution_components() {
+	local sep=${1-;}
+
+	local out=(
+		# common stuff
+		clang-cmake-exports
+		clang-headers
+		clang-resource-headers
+		libclang-headers
+
+		aarch64-resource-headers
+		arm-common-resource-headers
+		arm-resource-headers
+		core-resource-headers
+		cuda-resource-headers
+		hexagon-resource-headers
+		hip-resource-headers
+		hlsl-resource-headers
+		mips-resource-headers
+		opencl-resource-headers
+		openmp-resource-headers
+		ppc-htm-resource-headers
+		ppc-resource-headers
+		riscv-resource-headers
+		systemz-resource-headers
+		utility-resource-headers
+		ve-resource-headers
+		webassembly-resource-headers
+		windows-resource-headers
+		x86-resource-headers
+
+		# libs
+		clang-cpp
+		libclang
+	)
+
+	if multilib_is_native_abi; then
+		out+=(
+			# common stuff
+			bash-autocomplete
+			libclang-python-bindings
+
+			# tools
+			amdgpu-arch
+			c-index-test
+			clang
+			clang-format
+			clang-linker-wrapper
+			clang-offload-bundler
+			clang-offload-packager
+			clang-refactor
+			clang-repl
+			clang-rename
+			clang-scan-deps
+			diagtool
+			hmaptool
+			nvptx-arch
+
+			# needed for cross-compiling Clang
+			clang-tblgen
+		)
+
+		if use extra; then
+			out+=(
+				# extra tools
+				clang-apply-replacements
+				clang-change-namespace
+				clang-doc
+				clang-include-cleaner
+				clang-include-fixer
+				clang-move
+				clang-pseudo
+				clang-query
+				clang-reorder-fields
+				clang-tidy
+				clang-tidy-headers
+				clangd
+				find-all-symbols
+				modularize
+				pp-trace
+			)
+		fi
+
+		if llvm_are_manpages_built; then
+			out+=( docs-clang-man )
+			use extra && out+=( docs-clang-tools-man )
+		fi
+
+		if use doc; then
+			out+=( docs-clang-html )
+			use extra && out+=( docs-clang-tools-html )
+		fi
+
+		use static-analyzer && out+=(
+			clang-check
+			clang-extdef-mapping
+			scan-build
+			scan-build-py
+			scan-view
+		)
+	fi
+
+	printf "%s${sep}" "${out[@]}"
+}
+
+multilib_src_configure() {
+	tc-is-gcc && filter-lto # GCC miscompiles LLVM, bug #873670
+
+	local mycmakeargs=(
+		-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
+		-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
+		-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
+		# relative to bindir
+		-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"
+
+		-DBUILD_SHARED_LIBS=OFF
+		-DCLANG_LINK_CLANG_DYLIB=ON
+		-DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
+		-DCLANG_INCLUDE_TESTS=$(usex test)
+
+		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+
+		# these are not propagated reliably, so redefine them
+		-DLLVM_ENABLE_EH=ON
+		-DLLVM_ENABLE_RTTI=ON
+
+		-DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=$(usex !xml)
+		# libgomp support fails to find headers without explicit -I
+		# furthermore, it provides only syntax checking
+		-DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
+
+		# disable using CUDA to autodetect GPU, just build for all
+		-DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON
+		# disable linking to HSA to avoid automagic dep,
+		# load it dynamically instead
+		-DCMAKE_DISABLE_FIND_PACKAGE_hsa-runtime64=ON
+
+		-DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie)
+
+		-DCLANG_ENABLE_ARCMT=$(usex static-analyzer)
+		-DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer)
+
+		-DPython3_EXECUTABLE="${PYTHON}"
+	)
+
+	if ! use elibc_musl; then
+		mycmakeargs+=(
+			-DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double)
+		)
+	fi
+
+	use test && mycmakeargs+=(
+		-DLLVM_BUILD_TESTS=ON
+		-DLLVM_LIT_ARGS="$(get_lit_flags)"
+	)
+
+	if multilib_is_native_abi; then
+		local build_docs=OFF
+		if llvm_are_manpages_built; then
+			build_docs=ON
+			mycmakeargs+=(
+				-DLLVM_BUILD_DOCS=ON
+				-DLLVM_ENABLE_SPHINX=ON
+				-DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
+				-DSPHINX_WARNINGS_AS_ERRORS=OFF
+			)
+			if use extra; then
+				mycmakeargs+=(
+					-DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra"
+				)
+			fi
+		fi
+		mycmakeargs+=(
+			-DCLANG_INCLUDE_DOCS=${build_docs}
+		)
+	fi
+	if multilib_native_use extra; then
+		mycmakeargs+=(
+			-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra
+			-DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs}
+		)
+	else
+		mycmakeargs+=(
+			-DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF
+		)
+	fi
+
+	if [[ -n ${EPREFIX} ]]; then
+		mycmakeargs+=(
+			-DGCC_INSTALL_PREFIX="${EPREFIX}/usr"
+		)
+	fi
+
+	if tc-is-cross-compiler; then
+		has_version -b sys-devel/clang:${LLVM_MAJOR} ||
+			die "sys-devel/clang:${LLVM_MAJOR} is required on the build host."
+		local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin
+		mycmakeargs+=(
+			-DLLVM_TOOLS_BINARY_DIR="${tools_bin}"
+			-DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen
+		)
+	fi
+
+	# LLVM can have very high memory consumption while linking,
+	# exhausting the limit on 32-bit linker executable
+	use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory"
+
+	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+	cmake_src_configure
+
+	multilib_is_native_abi && check_distribution_components
+}
+
+multilib_src_compile() {
+	cmake_build distribution
+
+	# provide a symlink for tests
+	if [[ ! -L ${WORKDIR}/lib/clang ]]; then
+		mkdir -p "${WORKDIR}"/lib || die
+		ln -s "${BUILD_DIR}/$(get_libdir)/clang" "${WORKDIR}"/lib/clang || die
+	fi
+}
+
+multilib_src_test() {
+	# respect TMPDIR!
+	local -x LIT_PRESERVES_TMP=1
+	local test_targets=( check-clang )
+	if multilib_native_use extra; then
+		test_targets+=(
+			check-clang-tools
+			check-clangd
+		)
+	fi
+	cmake_build "${test_targets[@]}"
+}
+
+src_install() {
+	MULTILIB_WRAPPED_HEADERS=(
+		/usr/include/clang/Config/config.h
+	)
+
+	multilib-minimal_src_install
+
+	# Move runtime headers to /usr/lib/clang, where they belong
+	mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die
+	# move (remaining) wrapped headers back
+	if use extra; then
+		mv "${T}"/clang-tidy "${ED}"/usr/include/ || die
+	fi
+	mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die
+
+	# Apply CHOST and version suffix to clang tools
+	local clang_tools=( clang clang++ clang-cl clang-cpp )
+	local abi i
+
+	# cmake gives us:
+	# - clang-X
+	# - clang -> clang-X
+	# - clang++, clang-cl, clang-cpp -> clang
+	# we want to have:
+	# - clang-X
+	# - clang++-X, clang-cl-X, clang-cpp-X -> clang-X
+	# - clang, clang++, clang-cl, clang-cpp -> clang*-X
+	# also in CHOST variant
+	for i in "${clang_tools[@]:1}"; do
+		rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die
+		dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}"
+		dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}"
+	done
+
+	# now create target symlinks for all supported ABIs
+	for abi in $(get_all_abis); do
+		local abi_chost=$(get_abi_CHOST "${abi}")
+		for i in "${clang_tools[@]}"; do
+			dosym "${i}-${LLVM_MAJOR}" \
+				"/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}"
+			dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \
+				"/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}"
+		done
+	done
+}
+
+multilib_src_install() {
+	DESTDIR=${D} cmake_build install-distribution
+
+	# move headers to /usr/include for wrapping & ABI mismatch checks
+	# (also drop the version suffix from runtime headers)
+	rm -rf "${ED}"/usr/include || die
+	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die
+	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/clang "${ED}"/usr/include/clangrt || die
+	if multilib_native_use extra; then
+		# don't wrap clang-tidy headers, the list is too long
+		# (they're fine for non-native ABI but enabling the targets is problematic)
+		mv "${ED}"/usr/include/clang-tidy "${T}/" || die
+	fi
+}
+
+multilib_src_install_all() {
+	python_fix_shebang "${ED}"
+	if use static-analyzer; then
+		python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view
+	fi
+
+	docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man"
+	llvm_install_manpages
+	# match 'html' non-compression
+	use doc && docompress -x "/usr/share/doc/${PF}/tools-extra"
+	# +x for some reason; TODO: investigate
+	use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1"
+}
+
+pkg_postinst() {
+	if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
+		eselect compiler-shadow update all
+	fi
+
+	elog "You can find additional utility scripts in:"
+	elog "  ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang"
+	if use extra; then
+		elog "Some of them are vim integration scripts (with instructions inside)."
+		elog "The run-clang-tidy.py script requires the following additional package:"
+		elog "  dev-python/pyyaml"
+	fi
+}
+
+pkg_postrm() {
+	if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
+		eselect compiler-shadow clean all
+	fi
+}
diff --git a/sys-devel/gcc-apple/Manifest b/sys-devel/gcc-apple/Manifest
index 99574fbbcaee..0010d4258366 100644
--- a/sys-devel/gcc-apple/Manifest
+++ b/sys-devel/gcc-apple/Manifest
@@ -1,14 +1,12 @@
 AUX gcc-apple-4.0.1_p5465-default-altivec.patch 1381 BLAKE2B 0b669602aab437347c3004df665accb70da73e961d461b25928c3149205a9e6ef071844eaf991ec0ae38c4324f063c6665aca341aa5c76a86db612fba8a97722 SHA512 8eb71bb7d478af415d4222774172423744ec8ded1c1fe03da03779a4e8d19ce7783bf246b7249f30249a4d9f2eb34f667fa43a2e40edba23f22fe535c2dc6100
 AUX gcc-apple-4.2.1-arch-option.patch 2151 BLAKE2B 18a0d7c4327eb18dc002f2d27f2d585cb68c7470446728d942b45cb97d9efe5aa5fe3e97c309c699527105bc544fb93a9e1a54228140c730119ba554dd193329 SHA512 daa34b0db6b5ce46766628819b7234fd1310060d359bf088d5ab06f2aeef9f4fc33f403b428e105c7cecc6d4d3b823134ddc090cc0c44bd6650d3b6a65c58635
 AUX gcc-apple-4.2.1-autoconf-m4-precious.patch 340 BLAKE2B 2b07c82d2701046948894f170cbe28025f1cd8b7bfb88f8e4e71b23e4d1f9c6077e91fc69b6eee1d32607725d0207fa601879ed6d9a274486a513a46c4bf9dc5 SHA512 7a7f40e1aa87c92d412d9b803cfbe43ecc51568a39bfab29eb3307489661a68c40d690af53a8902ce55e96f364860287a19934e3fe3d075c5d62e086d72836db
-AUX gcc-apple-4.2.1-dsymutil.patch 853 BLAKE2B f5dab1cbe202d2eaa81543dee6566a58afa437b640e7861d4ea16ce2544607f0080b95992d3990e7ed60f5ce484b43660a2c0b813b5a27c26cd62e0c1a3c278d SHA512 382a49d92f03772e71bbb5b31257187b3fd964583f4a1ab2a19a459f679d9dd48549813cb3ef03e6cbaf728c9e62162364d1dafb75257d85b687b7e356d580d0
 AUX gcc-apple-4.2.1-prefix-search-dirs-r1.patch 1587 BLAKE2B 63325134bc7d707fc754d963a65d0075a3a71ad7be0d480c6b30e596b8f07755ab7519329f779513ed0020d29c73bd82aee1ec531ebd26e61e952a59bd34115e SHA512 04ebd1b02ce022c4277988fabb7c198286bc9604ade70cf5d64a0296781a377b6c26ad8206da63d37ca1211537b4b8d31d7b06ae1fa3405f77f19ce01636156f
 AUX gcc-apple-4.2.1-texinfo.patch 1110 BLAKE2B 6e20d296ed6e8c8ba10793476046f3737ff17c9a9cc3da9cec9184c6a94ad8e38a2f1491de44bc46346df540eebf68d6f3dd6f91715597dd0858fa61e25dcce3 SHA512 1b27fa076dffc80d4ea9cc2e209f4ef2cd31ba4f585b977c20a15432cb7a86f3bc76aa734cb328e5702309585e1c440ed33fd605b863e41c91d96268d1b6bf36
 AUX gcc-apple-4.2.1_p5666-darwin14.patch 4870 BLAKE2B 6fd45e830d2d0a5f7b1d02738d3c28d8e13c577687cad35787edd87f843b73abfe68d9295fb6934925ba2d304a07b61d3735ee3dfbcf3cdd4468f33de02a75a2 SHA512 4569f6ae976760074629f5526a45793e10ca56508f13642c4da173c387f4ccf1ffc62b595e3fbc8694fd0d673f5a19eb5a9002b211ed149ad4492044d26bbba7
 AUX gcc-apple-4.2.1_p5666-darwin8.patch 650 BLAKE2B 70d2bfe36cc6b83a87b8fc427ebd84666f2ba2939993783d8b6b7185333db6a1de4ab59c8abb8fe72e98e82b5dd61c95a6064f793e7cb475f1a793a08b3c6319 SHA512 bb9f8d775b580bbf42fe6031509afc2297079f0a275a4ba890c2fa643ab2611900cbb48148deef193e462f1155f9647d55dc13c4ba12cc89f3233e989104ed2d
 AUX gcc-apple-4.2.1_p5666-dsymutil.patch 948 BLAKE2B ab08c77d7b4fb4befc2d341595ce695e69ba7db7044046d7002a35111d8503ed59fb353056d1080feabb2f7dd43c6fea5fa5aa6513d91655afee5b57019e2dcc SHA512 765f467a6297dd0db21f1d4cbfd0908dbdcfb71f9805a5cab6dab4e80a281d262e6743f18a54313bab8909fc3e6ea3dd4c6cb7596f388e92e2b480d7bc900735
 AUX gcc-apple-4.2.1_p5666-perl-5.18.patch 286 BLAKE2B 3c7b4f78046d24b3f44e4dc8f36e9735973ca04303944822594c9cdb716d98fc5995d7b03bdd096a3f6bbc871af5ba5933e231eb03b910b33ca8683072ddf42e SHA512 bdbb2e1d6146ff461c762d3efff59f272762121b033eb24bb1a016ab946268ec77dc22d01997870c406ac09d55e668eead61865a696a490482e69befb84cfdba
-AUX libstdc++-16.patch 253 BLAKE2B 5036f619f88e388acacde0b3a4b3e67aa77dbfad01ffeda646247c640b2013dd0773ba69e1db00ace81a79a8b2f67a3b3a4579a9a73fb1ab2b345878e1b1687e SHA512 aefc96161aba55ee77620e440cab3674f069331a6947e26acf56562e286e64f0888b247b9e67b02f68b16f4522e7e6ab4b145190508ed9222ad2dc98cc625716
 DIST gcc-5666.3.tar.gz 19367320 BLAKE2B 4b64aa80daa357d1ccf4d2c6f0d06ccd9298dc388a33833c89a9e4c009353d609590a2cd476bf4b79dea8876367b32a0ce534983cfb9c18a87e73f7c59bfbec6 SHA512 31cf52a00f31bcd7c47382888152cfe9851688c8fb7b1f236197b06b8acdd96b1943d327f8fab0fd305531c99a8fbf4865b2214dc2d1a236bb8ad39f710ce931
 DIST gcc-apple-4.2.1_p5646-gfortran.patch 38284 BLAKE2B 83934d5e52a27a0db750f725c1df1e7127dca91611ae9987bf92b7e1a52af82d19f5521ed1112265c1e7f82c833dcc65aeea1ba6ff90f28107b256d40e7eb196 SHA512 94b1c7d343b780e52bbbbc213987feda7d8f7e083d7c338ab244e89e69ba5c2fc74a9695c5f38f273e4e50683ef67b4de85abd4aa0c5c2fe3a28f7bf275dbf3a
 DIST gcc-fortran-4.2.4.tar.bz2 905688 BLAKE2B 6a7e030e3261b147f5add7c8b936ecb7a7a20b99db96e957fa94591560a2e303f2cdf931ca8d73b7c29464d288d1db52c2619bbf1cce30d7326a668aab303dad SHA512 1a36587a3691b8d7ecd23938efcdfca42642b6b260a1c830f6d791bb1b8ac32953998c45d77eee2d557861d631431569503c796b61aeaea9ac5fffbce1982faa
diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch
deleted file mode 100644
index 8da025d8c5d0..000000000000
--- a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Revert of dsymutil part of
-http://gcc.gnu.org/ml/gcc-patches/2006-09/msg00057.html
-See http://article.gmane.org/gmane.linux.gentoo.alt/4327
-
---- gcc/config/darwin.h
-+++ gcc/config/darwin.h
-@@ -326,12 +326,7 @@
- "/* APPLE LOCAL nested functions 4357979  */"\
-     %{fnested-functions: -allow_stack_execute} \
-     %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %G %L}} \
--"/* APPLE LOCAL begin mainline 4.3 2006-10-31 4370146 */"\
--    %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} %{F*} }}}}}}}}\n\
--%{!fdump=*:%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:\
--"/* APPLE LOCAL end mainline 4.3 2006-10-31 4370146 */"\
--    %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm: \
--    %{g*:%{!gstabs*:%{!g0: dsymutil %{o*:%*}%{!o:a.out}}}}}}}}}}}}"
-+    %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} %{F*} }}}}}}}}"
- /* APPLE LOCAL end mainline */
- 
- #ifdef TARGET_SYSTEM_ROOT
diff --git a/sys-devel/gcc-apple/files/libstdc++-16.patch b/sys-devel/gcc-apple/files/libstdc++-16.patch
deleted file mode 100644
index 81d075bface7..000000000000
--- a/sys-devel/gcc-apple/files/libstdc++-16.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libstdc++-v3/include/bits/c++config
-+++ libstdc++-v3/include/bits/c++config
-@@ -76,7 +76,7 @@
- }
- namespace std
- {
--  using namespace __gnu_debug_def __attribute__ ((strong));
-+  using namespace __gnu_debug_def;
- }
- #else
- # define _GLIBCXX_STD std
diff --git a/sys-devel/lld-toolchain-symlinks/Manifest b/sys-devel/lld-toolchain-symlinks/Manifest
index 11d0da123f90..6c029b61fd83 100644
--- a/sys-devel/lld-toolchain-symlinks/Manifest
+++ b/sys-devel/lld-toolchain-symlinks/Manifest
@@ -1,5 +1,5 @@
 EBUILD lld-toolchain-symlinks-14-r2.ebuild 801 BLAKE2B 9d503356ed85fd996a922f531782550dc9d9fb8f8f70b6298083abb4bda017b4015932add186a9e55c54e55135913b2cb83f571b115de09e704c936435f53f02 SHA512 7280dff33d642c0b1d4a6f23fbca4d412fc90693b7a9b825d0044f41694d2d4438b0c270277851999688dd7f04c4e67393c435b087d837abdd1f59011f3eb7ae
 EBUILD lld-toolchain-symlinks-15-r2.ebuild 796 BLAKE2B 830b933f8535eef6b128c929b80bb90d80541bd3a5ed7b5b66f453ee3e09af3e70d3df9fe5994aaca0b25160042c6cd2e8ff0fcf618da8acb2215a32cc28a8a4 SHA512 b44ce89bf627b927d79a9b182e6675024f88a26e4f76709b8490c4c67fe294efad06f2e82f72006fc638d4f0fcb87a3b54d4ffd12c039160283838405bb02aa2
-EBUILD lld-toolchain-symlinks-16-r2.ebuild 806 BLAKE2B 1ee142c62ffa98b39d806f71f69f9caaddfec5d9f91214161090c28b1881ef63e7d808a92a76c3712793fbdb6d9e051a29ba9dd6444a31cb60a771dcc87b4b4f SHA512 2251199def02ce94d72ea287e47a7e2cb3a4d95b34da6a66a0715f477803e47ae13539c44cf2f8dc57f029bb5a6380375f00cf5b8e43e2d6cbfce8bcf2e3ef7e
+EBUILD lld-toolchain-symlinks-16-r2.ebuild 805 BLAKE2B 3a0a716e7fc993f2b6e482b6430af9a6822eda3f53b3118fe11e2cdcabdfb4f79f5ad77c3c6eadffcd0089bb2d93e41caafe7804e3fb7eed5b70ece6474f3a6b SHA512 fdd24fc5027d616d0e653b18c38f06d48911090537c6a34874de427fae252c51bb849d754c811702440ab8c857b9a13876702c4c9c96695015fbd0b4af6e4a9c
 EBUILD lld-toolchain-symlinks-17.ebuild 782 BLAKE2B 8df819209ba58e4f772b2c192cc951433a673fe6c4e7367fd9de93acdae63b787c1563adbceea49451c78a4e0fb7e5c4b109dd7dd636b39f2b78fa708e1faf1f SHA512 c889bec3ac8aa431bb13f5cf6e0900f6114ae30299ba752ddd648494309a7cfb1e930d2a4fb4d933666ae1630e3158e4633c082271651791c084a333e08b91d2
 MISC metadata.xml 784 BLAKE2B 044eebb87ddac511186e137d9e255cb3ead2d53aeffafc641cc9a53556b833f06cae439907de8e8ead1090d54f7cc4bcacdbfff52449b6fab5908aa6d354a110 SHA512 50a9ac94efe64f8f6533049f496a19c37e375803ea3920a3729c93f346117ea5b662978570db27e8fffcfaf78f990691c4ab5aaf7dd48a7e2931f713eddedb4b
diff --git a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild
index 062d273129c7..ede252119011 100644
--- a/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild
+++ b/sys-devel/lld-toolchain-symlinks/lld-toolchain-symlinks-16-r2.ebuild
@@ -12,7 +12,7 @@ S=${WORKDIR}
 
 LICENSE="public-domain"
 SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ppc64 ~riscv ~x86"
 IUSE="multilib-symlinks +native-symlinks"
 
 RDEPEND="
diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest
index 35a4a76d9f3b..66f6e7398747 100644
--- a/sys-devel/lld/Manifest
+++ b/sys-devel/lld/Manifest
@@ -4,11 +4,13 @@ DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.5.src.tar.xz 118000368 BLAKE2B 9f84e6bab450dc8d6379771afbca5cddc6fbad6c9728726f7158f290ab87d464ff657e89e1c8fc3c474362cc865ff13c5d55ef758c848ea3e660d732cb2fdefa SHA512 7008e7e9c8c2246fe98ba3f0c0fa91e41c88c4da427bf1cfdcce7ef57e5ea838efe7c58c523a7d1708e70d64a4338afe16d06fba2fc7ac5a6c19ca3d6ee41e99
 DIST llvm-project-16.0.5.src.tar.xz.sig 566 BLAKE2B 4c96f294f350e0086f8504a54c3387308c60efb573c8def40aec45b1918d43e36c44bafb0823625b6cefa5d99b3aacd7823d6c92c7a64a737653d5b51839a924 SHA512 4550c7c6a1b6ea603d1499aba5aca746f3948a00e7567604f5e7dc3b215a34357bad382a7ebea1f6cd7952841cb75a0dfbe2c278a8c6fcb630a5035b3e16e869
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
 DIST llvm-project-62c0bdabfa32f6e32b17b45425b15309db340dfb.tar.gz 190948645 BLAKE2B f41d8ea32e189ef4641e42628fb516e307c9a6fcf65af537eb9fc0d3186591b062c5e85c9e935511ef706f28c6994a774a4e3f36ff54d79aaac7b293a6168625 SHA512 55a4cbfec3a496c1918aa614e5bdee368e4d0b6641c946d8bf8b828ab4bf4d9b29dbe96401a172079d70f924f5e513428fe990c65b556a0a860802cb13f5e3a0
 EBUILD lld-14.0.6-r1.ebuild 2009 BLAKE2B 4db1dfc9b1997d31cc68240ae0b05afeae5a6b1cb24a0eb2012bc28b2ac8c0da4b532d270d070db5fd401717320a74b006628c19a12c787e2f9ba2dc24eb25b1 SHA512 73b2f0e7b27497ce9037cd10503b328378ff9a2e32cd36e6e264f5423cd05732da4ea2ef97b637fc344a4f3d5d3597c60dda29dba7eb509391c176d32d53a427
 EBUILD lld-15.0.7.ebuild 2262 BLAKE2B 8882ba45692d54840d8a5933910ade614427733f3da2e344cf4df2806c125a783ff3c6ad4a2f76fd577cb4787fe07495c93e981c03f116fa7f383575d59936f7 SHA512 9b08495f068a01e991d200363549d29e9146e8687b297fa06beda90da1da9a793b1ebf512c3dad9bb985518a8fd9d1d13049a90dd8f06d4bc3de97779ff8e6ed
-EBUILD lld-16.0.5.ebuild 2239 BLAKE2B 33f554acd6e1db31f9aec3d75b2c43994a95240ba42bcdf7060090231ff6214e896b5fd051fcb513337161cef408014f64391e9ecfcf5269749fcfdb8a3771da SHA512 a06a9e4ff4f9109dd4eb3f3fdb2308b043beca30c016b184a3f77e7c4728161b3a1b4a662fccf102419c4a3aabab9e30db5a3c87448fb8b2a91237bc08e834ea
-EBUILD lld-16.0.6.9999.ebuild 2197 BLAKE2B 0f6db5db6fff4f572187749ab1704fce82e1859db1b7dd8b9de3652eed3e63ae781f7c48d16237576e9a186fe0680e349d160f15047cb5f54998fab7b8c0d60e SHA512 5de60e7ae08bade5028fb325e81ef82bf2aca38507d131e40505320587cbc43db5d74203d849cb057bee27b7f4e3820263f429db8454e4ca38bcc6f7e873bf9b
+EBUILD lld-16.0.5.ebuild 2238 BLAKE2B e42b8be23204fd9ebd62daf6e17199c8ebaa4317b152ba81e9d528504220b76ff2f6b61d1c39b728487c2483f7cc787a93b443c458cc8a1ff532cc9dce0109b9 SHA512 a16604093e1709104840f4f0cbbfb6c7782e377b940a8f65156da241f2478bfbc61b3f44e7769fb96441ece3d82f2858b0669e08217b362fff8af0abd5e88693
+EBUILD lld-16.0.6.ebuild 2239 BLAKE2B 33f554acd6e1db31f9aec3d75b2c43994a95240ba42bcdf7060090231ff6214e896b5fd051fcb513337161cef408014f64391e9ecfcf5269749fcfdb8a3771da SHA512 a06a9e4ff4f9109dd4eb3f3fdb2308b043beca30c016b184a3f77e7c4728161b3a1b4a662fccf102419c4a3aabab9e30db5a3c87448fb8b2a91237bc08e834ea
 EBUILD lld-17.0.0.9999.ebuild 2157 BLAKE2B dd17cb187ecc5f448245e19ce67fc9abf26bad3fd62b4f999d01defc43b87e8d47f1613212d56e66061f414de947e0e2a9e24aeffd4b4baf947714b5dadb5ba0 SHA512 fca39302715a0c083b24b94336eeb53a376d69e014f49922ce49987ce2a8c591727cdde49fd70ed5067305c807e4445653753efd5900d8bb61e5b47269fd37d6
 EBUILD lld-17.0.0_pre20230609.ebuild 2157 BLAKE2B dd17cb187ecc5f448245e19ce67fc9abf26bad3fd62b4f999d01defc43b87e8d47f1613212d56e66061f414de947e0e2a9e24aeffd4b4baf947714b5dadb5ba0 SHA512 fca39302715a0c083b24b94336eeb53a376d69e014f49922ce49987ce2a8c591727cdde49fd70ed5067305c807e4445653753efd5900d8bb61e5b47269fd37d6
 MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685
diff --git a/sys-devel/lld/lld-16.0.5.ebuild b/sys-devel/lld/lld-16.0.5.ebuild
index 7ddfd8f8a755..9db1745a416b 100644
--- a/sys-devel/lld/lld-16.0.5.ebuild
+++ b/sys-devel/lld/lld-16.0.5.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
 SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ppc64 ~riscv ~x86"
 IUSE="debug test zstd"
 RESTRICT="!test? ( test )"
 
diff --git a/sys-devel/lld/lld-16.0.6.9999.ebuild b/sys-devel/lld/lld-16.0.6.9999.ebuild
deleted file mode 100644
index d22c1fb13951..000000000000
--- a/sys-devel/lld/lld-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs
-
-DESCRIPTION="The LLVM linker (link editor)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS=""
-IUSE="debug test zstd"
-RESTRICT="!test? ( test )"
-
-DEPEND="
-	~sys-devel/llvm-${PV}[zstd=]
-	sys-libs/zlib:=
-	zstd? ( app-arch/zstd:= )
-"
-RDEPEND="
-	${DEPEND}
-	!sys-devel/lld:0
-"
-BDEPEND="
-	sys-devel/llvm:${LLVM_MAJOR}
-	test? (
-		>=dev-util/cmake-3.16
-		$(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]")
-	)
-"
-PDEPEND="
-	>=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR}
-"
-
-LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o )
-LLVM_TEST_COMPONENTS=( llvm/utils third-party )
-llvm.org_set_globals
-
-python_check_deps() {
-	python_has_version ">=dev-python/lit-${PV}[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
-	LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
-	use test && python-any-r1_pkg_setup
-}
-
-src_unpack() {
-	llvm.org_src_unpack
-
-	# Directory ${WORKDIR}/llvm does not exist with USE="-test",
-	# but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below,
-	# and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system
-	# (lld/MachO/CMakeLists.txt) and is expected to be resolvable
-	# to existent directory ${WORKDIR}/libunwind/include.
-	mkdir -p "${WORKDIR}/llvm" || die
-}
-
-src_configure() {
-	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
-	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
-	use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
-	local mycmakeargs=(
-		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-		-DBUILD_SHARED_LIBS=ON
-		-DLLVM_INCLUDE_TESTS=$(usex test)
-	)
-
-	use test && mycmakeargs+=(
-		-DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
-		-DLLVM_LIT_ARGS="$(get_lit_flags)"
-		-DPython3_EXECUTABLE="${PYTHON}"
-	)
-
-	tc-is-cross-compiler &&	mycmakeargs+=(
-		-DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen"
-	)
-
-	cmake_src_configure
-}
-
-src_test() {
-	local -x LIT_PRESERVES_TMP=1
-	cmake_build check-lld
-}
diff --git a/sys-devel/lld/lld-16.0.6.ebuild b/sys-devel/lld/lld-16.0.6.ebuild
new file mode 100644
index 000000000000..7ddfd8f8a755
--- /dev/null
+++ b/sys-devel/lld/lld-16.0.6.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs
+
+DESCRIPTION="The LLVM linker (link editor)"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="debug test zstd"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	~sys-devel/llvm-${PV}[zstd=]
+	sys-libs/zlib:=
+	zstd? ( app-arch/zstd:= )
+"
+RDEPEND="
+	${DEPEND}
+	!sys-devel/lld:0
+"
+BDEPEND="
+	sys-devel/llvm:${LLVM_MAJOR}
+	test? (
+		>=dev-util/cmake-3.16
+		$(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]")
+	)
+"
+PDEPEND="
+	>=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR}
+"
+
+LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o )
+LLVM_TEST_COMPONENTS=( llvm/utils third-party )
+llvm.org_set_globals
+
+python_check_deps() {
+	python_has_version ">=dev-python/lit-${PV}[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+	LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
+	use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+	llvm.org_src_unpack
+
+	# Directory ${WORKDIR}/llvm does not exist with USE="-test",
+	# but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below,
+	# and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system
+	# (lld/MachO/CMakeLists.txt) and is expected to be resolvable
+	# to existent directory ${WORKDIR}/libunwind/include.
+	mkdir -p "${WORKDIR}/llvm" || die
+}
+
+src_configure() {
+	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+	use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+	local mycmakeargs=(
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
+		-DBUILD_SHARED_LIBS=ON
+		-DLLVM_INCLUDE_TESTS=$(usex test)
+	)
+
+	use test && mycmakeargs+=(
+		-DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+		-DLLVM_LIT_ARGS="$(get_lit_flags)"
+		-DPython3_EXECUTABLE="${PYTHON}"
+	)
+
+	tc-is-cross-compiler &&	mycmakeargs+=(
+		-DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen"
+	)
+
+	cmake_src_configure
+}
+
+src_test() {
+	local -x LIT_PRESERVES_TMP=1
+	cmake_build check-lld
+}
diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest
index c00235f13c0e..9423308b75c2 100644
--- a/sys-devel/llvm-common/Manifest
+++ b/sys-devel/llvm-common/Manifest
@@ -4,11 +4,13 @@ DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.5.src.tar.xz 118000368 BLAKE2B 9f84e6bab450dc8d6379771afbca5cddc6fbad6c9728726f7158f290ab87d464ff657e89e1c8fc3c474362cc865ff13c5d55ef758c848ea3e660d732cb2fdefa SHA512 7008e7e9c8c2246fe98ba3f0c0fa91e41c88c4da427bf1cfdcce7ef57e5ea838efe7c58c523a7d1708e70d64a4338afe16d06fba2fc7ac5a6c19ca3d6ee41e99
 DIST llvm-project-16.0.5.src.tar.xz.sig 566 BLAKE2B 4c96f294f350e0086f8504a54c3387308c60efb573c8def40aec45b1918d43e36c44bafb0823625b6cefa5d99b3aacd7823d6c92c7a64a737653d5b51839a924 SHA512 4550c7c6a1b6ea603d1499aba5aca746f3948a00e7567604f5e7dc3b215a34357bad382a7ebea1f6cd7952841cb75a0dfbe2c278a8c6fcb630a5035b3e16e869
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
 DIST llvm-project-62c0bdabfa32f6e32b17b45425b15309db340dfb.tar.gz 190948645 BLAKE2B f41d8ea32e189ef4641e42628fb516e307c9a6fcf65af537eb9fc0d3186591b062c5e85c9e935511ef706f28c6994a774a4e3f36ff54d79aaac7b293a6168625 SHA512 55a4cbfec3a496c1918aa614e5bdee368e4d0b6641c946d8bf8b828ab4bf4d9b29dbe96401a172079d70f924f5e513428fe990c65b556a0a860802cb13f5e3a0
 EBUILD llvm-common-14.0.6.ebuild 602 BLAKE2B ef26d6ac2606e9a316ddcce442da1762f578ade0346ba2a947fdace5e2020e8841c63d173e42506d23abf6efc062a2edfac0be98a3eefe1f7a29c88702e9f1d5 SHA512 789dad6fdcf9a930ddc1046e7e98ebc1e05b2dd3713bb1ec5b8a5711690d779691c91d1000d9776720b21ed241d2f12c0ae9a8dba0e6a17d0ddf563cdfbe657f
 EBUILD llvm-common-15.0.7.ebuild 601 BLAKE2B 3dd38d17640ed52ff0be26db026475a9d0e7e1acebe95043bc6e0e63e32ff4f03c5637a9dcce25987f673962447feb4aa015f8b5b5cb33553dc1a4f843b75399 SHA512 e8a93a72d06810cface48cce2d8f8a890cdf009939a96350a23fe407b064c05a3016c663d11a3866dc2dd0fd87599b5ac234895c8c42c902e9b0cdb37dba7b62
-EBUILD llvm-common-16.0.5.ebuild 615 BLAKE2B dddab327388341f3330d7374a76bc1ea144aa5cad62feea34140b5825daf13118ff7185a6c2cce07479c3ca13c3ba8ad7cac7ba71a8b49fdd25a979d899a5b0a SHA512 57e7d90e7fc4f5dd2daddd1c7e8ed7885112120aca2b13b21e2fc719cfe5a87bb640aa67c605827bcd60aa71300abeba937e158ae1a1a16559236ef9e6d18319
-EBUILD llvm-common-16.0.6.9999.ebuild 524 BLAKE2B 381b028d6ad33fa97d2ff250266bd896153222cb62647bc6c4a9f7493fc96c23faf788ce8a976d35333e8d40e63cad4c3f44322f6a41f1dbe53f9e772c3a40d9 SHA512 9661a9c544d8bf3edf6c24a307324a58652c8635703dcfa008cad96826e3404cbb05e5c95fe7df85ed6d2642e4f83cfff0c9a381b796cc78f560854aa071acbe
+EBUILD llvm-common-16.0.5.ebuild 614 BLAKE2B e48fc8a0dce2085b3333013ddfbeebd047c28abc17aebd844ca5b1433560eb2401f8cebb584be4879932371dcfd1bea8d595ac37a61c2f3e1cbccb5003e704df SHA512 3a093224f8d357306b2e529190422cfe1bd31f66b1c8ceb07340bd8a8a25141ffa5bd033dfa4a8da9868c01a0ea8a9b5b5d64a046fa5fb2873e328db66badea0
+EBUILD llvm-common-16.0.6.ebuild 615 BLAKE2B dddab327388341f3330d7374a76bc1ea144aa5cad62feea34140b5825daf13118ff7185a6c2cce07479c3ca13c3ba8ad7cac7ba71a8b49fdd25a979d899a5b0a SHA512 57e7d90e7fc4f5dd2daddd1c7e8ed7885112120aca2b13b21e2fc719cfe5a87bb640aa67c605827bcd60aa71300abeba937e158ae1a1a16559236ef9e6d18319
 EBUILD llvm-common-17.0.0.9999.ebuild 524 BLAKE2B 381b028d6ad33fa97d2ff250266bd896153222cb62647bc6c4a9f7493fc96c23faf788ce8a976d35333e8d40e63cad4c3f44322f6a41f1dbe53f9e772c3a40d9 SHA512 9661a9c544d8bf3edf6c24a307324a58652c8635703dcfa008cad96826e3404cbb05e5c95fe7df85ed6d2642e4f83cfff0c9a381b796cc78f560854aa071acbe
 EBUILD llvm-common-17.0.0_pre20230609.ebuild 524 BLAKE2B 381b028d6ad33fa97d2ff250266bd896153222cb62647bc6c4a9f7493fc96c23faf788ce8a976d35333e8d40e63cad4c3f44322f6a41f1dbe53f9e772c3a40d9 SHA512 9661a9c544d8bf3edf6c24a307324a58652c8635703dcfa008cad96826e3404cbb05e5c95fe7df85ed6d2642e4f83cfff0c9a381b796cc78f560854aa071acbe
 MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685
diff --git a/sys-devel/llvm-common/llvm-common-16.0.5.ebuild b/sys-devel/llvm-common/llvm-common-16.0.5.ebuild
index 4dd4fe395fe7..d104957ab6f7 100644
--- a/sys-devel/llvm-common/llvm-common-16.0.5.ebuild
+++ b/sys-devel/llvm-common/llvm-common-16.0.5.ebuild
@@ -10,7 +10,7 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
 SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
 
 RDEPEND="
 	!sys-devel/llvm:0
diff --git a/sys-devel/llvm-common/llvm-common-16.0.6.9999.ebuild b/sys-devel/llvm-common/llvm-common-16.0.6.9999.ebuild
deleted file mode 100644
index ce5f03ca34a5..000000000000
--- a/sys-devel/llvm-common/llvm-common-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit llvm.org
-
-DESCRIPTION="Common files shared between multiple slots of LLVM"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
-SLOT="0"
-KEYWORDS=""
-
-RDEPEND="
-	!sys-devel/llvm:0
-"
-
-LLVM_COMPONENTS=( llvm/utils/vim )
-llvm.org_set_globals
-
-src_install() {
-	insinto /usr/share/vim/vimfiles
-	doins -r */
-	# some users may find it useful
-	newdoc README README.vim
-	dodoc vimrc
-}
diff --git a/sys-devel/llvm-common/llvm-common-16.0.6.ebuild b/sys-devel/llvm-common/llvm-common-16.0.6.ebuild
new file mode 100644
index 000000000000..4dd4fe395fe7
--- /dev/null
+++ b/sys-devel/llvm-common/llvm-common-16.0.6.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit llvm.org
+
+DESCRIPTION="Common files shared between multiple slots of LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+
+RDEPEND="
+	!sys-devel/llvm:0
+"
+
+LLVM_COMPONENTS=( llvm/utils/vim )
+llvm.org_set_globals
+
+src_install() {
+	insinto /usr/share/vim/vimfiles
+	doins -r */
+	# some users may find it useful
+	newdoc README README.vim
+	dodoc vimrc
+}
diff --git a/sys-devel/llvm-toolchain-symlinks/Manifest b/sys-devel/llvm-toolchain-symlinks/Manifest
index 38b65d06f9c0..d2282f6ba405 100644
--- a/sys-devel/llvm-toolchain-symlinks/Manifest
+++ b/sys-devel/llvm-toolchain-symlinks/Manifest
@@ -1,5 +1,5 @@
 EBUILD llvm-toolchain-symlinks-14-r1.ebuild 1050 BLAKE2B 2e1e3a23812823c1a747a2b09d006f874b3a192c92b1ed275988bd84740df5ed68283f638fa36232d780eec817c26163d4d76335ad1dc2e0c5780b96dddd88bd SHA512 f54178846a398792a753174cd6b067f63b22bef13dba49485b14cc7f909a1da2a8d9bb2657a0b485ccfb5a3830388a855d52e8dea7a62e766a3bd65bb6602923
 EBUILD llvm-toolchain-symlinks-15-r1.ebuild 1043 BLAKE2B 2c2ea96910bf11e2263bb157b9ef071998b61a2ab06ef848d68d1622249f74b4d1752351a5f2569c5668093c8f0b4b494eded9a920601e8226d4f519f0642754 SHA512 ee650715492c5d08a51760d6c14396d6a9c5fcbe8af069370d8cd628fda1c10f79250e553fd67a5d56ba370e446affbb1b2d48f8557f2dd58bad3947863f6814
-EBUILD llvm-toolchain-symlinks-16-r1.ebuild 1062 BLAKE2B 891f4ffbc620d580aa837d995efedde9877142c7bfd2947fd0c4e96ddb2ed35f92b92609be8f2bc5dc3b1e64e1db2396be297e2adada4e88c067e1358c426201 SHA512 ca89266631d06df77d1fd88fc7adfef1cdae8f84a9e59cea918a58882978cc168bb250962d5b2a94de2369b16858042d1a35cc684ab0fea106a89234be3b6521
+EBUILD llvm-toolchain-symlinks-16-r1.ebuild 1061 BLAKE2B fbbc3e4ff005766a832a4ee6b9a9731218dc1f0d29091a599c6a22ae66ac8ba6ac0b3aa46a4158a2a2a8204badbdc2abbe8779b3a5b31d6f5a6f50a824bf8d8e SHA512 d184b6e19aefcaa272d08ed46bf9fd89a107a7e2fd04a2a7270361db53ebac474ebed8e2269005ff5e7006e3a0976e7209449b268a2d63c5c1ef8e6c34cf0517
 EBUILD llvm-toolchain-symlinks-17.ebuild 989 BLAKE2B 63e5d2f1312362e4570ecdb3bc190ab4d30245f0149871eaba00ad257e05c31d0ea3664c3e4abae366fa47cd5c5eef581334bd7dfa71dc4250042342ad114a2d SHA512 bbfc302b6b49b0d8398b3f6115e32da3a9a9f2c2069225598191cc1fda90a551d459fb92ff309270bcb9a792791fd0b302cabb81456f61f35adfdfdc812c2fbe
 MISC metadata.xml 815 BLAKE2B 963f1b8425495144d04659d2d8cdabab910f15f9861634bf436a82ccb70b27682b44c47415ca6884956097e92294457d09b5c44e7a2f108c93abb79df8884aa7 SHA512 940a6c63c4c13a1c78c041c02df9bd3d2ac0f19eb552fcfb8134784386a2197956b1dd4950c760ca6ac9e8fb154eb550d59fc6ab1aea9c9236e7e005882d556a
diff --git a/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild
index 3d5290db05a7..fd259bd17ed9 100644
--- a/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild
+++ b/sys-devel/llvm-toolchain-symlinks/llvm-toolchain-symlinks-16-r1.ebuild
@@ -12,7 +12,7 @@ S=${WORKDIR}
 
 LICENSE="public-domain"
 SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
 IUSE="multilib-symlinks +native-symlinks"
 
 RDEPEND="
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 20241d3340be..faa29b4f30f6 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -5,19 +5,22 @@ DIST llvm-gentoo-patchset-14.0.6-r2.tar.xz 16120 BLAKE2B e12e522fdb7ba505693c679
 DIST llvm-gentoo-patchset-14.0.6-r4.tar.xz 19360 BLAKE2B 814dd617d237b0bd9c80bdd9d921196b8f93248b731083e79455d4609a05dd15b6847fc227359624abce683ecdaadaefea71dc9b65b7edd1fc3912123fa55054 SHA512 9ac57abc87a63cf31ecd021e6dd44f5f11cd6136fa3b92e89c52a6d13e0ed471f88e6e96160baeac4615eedff7943048a35a98c8d37387894c9c2d1f5df277ce
 DIST llvm-gentoo-patchset-15.0.7-r3.tar.xz 24268 BLAKE2B 6531ae385ecea87bc26dba8ce19b4cde8ff224c80fd81f04c6ded131e305ecfdeb8d29ebd3b68a641d240805dc83eb0ebc7cc85124f02ad0ee66e0f201b91d7e SHA512 66cb33f8b423736b990fb75d4f2d1e5f14c0b03308f403297204dd1a352d72f85f34220fd66d3de5d6df328cdf2ffce03c2a111cb0bb57791cf68a88069ac7df
 DIST llvm-gentoo-patchset-15.0.7.tar.xz 19300 BLAKE2B b70e81d744c2eba5cd851e7b690ce8979b3064973f522be7c93bfb541860000a4bc8b17219f8788dfc8a527217dd13946cf7836640698ddd3d4b3fde493dfbf8 SHA512 daffff6ae4a0874aff1a423b4bb36701ecb5a35a36ae91d4ed7fda58b83e50ffcdc30498c84be4711fd3e1f227bf312dbe930019203e0a131944439af2aa94f7
+DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825
 DIST llvm-project-14.0.6.src.tar.xz 105618228 BLAKE2B ee67c5407df8cef493b9c0004f15e428f22a536a17e5f4e3eb29a003b8a8ec0abe0fa3e072591161d5f30ef7d8867c1ce34d1b341ad858e93c00263499941a99 SHA512 6fc6eeb60fac698702d1aac495fc0161eb7216a1f8db2020af8fccec5837831f7cc20dc2a169bf4f0b5f520748280b4a86621f3697d622aa58faaa45dbfaad13
 DIST llvm-project-14.0.6.src.tar.xz.sig 566 BLAKE2B cb658ad43d8ab6c43a5773aedadf0569c97b5ee4b1bd58eceb10e1879a30880c741c3d66bedd462c892309b688fb7b2673115a62d1f74d71ee375a578de9547f SHA512 b4a7b368532a7a4a24376cfa7db8f6d3478f6d4446474342fc00b474ecf466330cd0f16783209263c4c72d5fc7ddedfb11b95578842e700cfb7ee0bb34cc95d6
 DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.5.src.tar.xz 118000368 BLAKE2B 9f84e6bab450dc8d6379771afbca5cddc6fbad6c9728726f7158f290ab87d464ff657e89e1c8fc3c474362cc865ff13c5d55ef758c848ea3e660d732cb2fdefa SHA512 7008e7e9c8c2246fe98ba3f0c0fa91e41c88c4da427bf1cfdcce7ef57e5ea838efe7c58c523a7d1708e70d64a4338afe16d06fba2fc7ac5a6c19ca3d6ee41e99
 DIST llvm-project-16.0.5.src.tar.xz.sig 566 BLAKE2B 4c96f294f350e0086f8504a54c3387308c60efb573c8def40aec45b1918d43e36c44bafb0823625b6cefa5d99b3aacd7823d6c92c7a64a737653d5b51839a924 SHA512 4550c7c6a1b6ea603d1499aba5aca746f3948a00e7567604f5e7dc3b215a34357bad382a7ebea1f6cd7952841cb75a0dfbe2c278a8c6fcb630a5035b3e16e869
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
 DIST llvm-project-62c0bdabfa32f6e32b17b45425b15309db340dfb.tar.gz 190948645 BLAKE2B f41d8ea32e189ef4641e42628fb516e307c9a6fcf65af537eb9fc0d3186591b062c5e85c9e935511ef706f28c6994a774a4e3f36ff54d79aaac7b293a6168625 SHA512 55a4cbfec3a496c1918aa614e5bdee368e4d0b6641c946d8bf8b828ab4bf4d9b29dbe96401a172079d70f924f5e513428fe990c65b556a0a860802cb13f5e3a0
 EBUILD llvm-14.0.6-r2.ebuild 12389 BLAKE2B 549b4e1c7feceb40c7e5aaa624925ec08627c84236c460f85a044621dc388cfca248f8a311c657a3b3dadbd367472f3c820a635c14246f74fdac98dd2ddf6fd1 SHA512 8559954b641fc007c92d4b3e2fcc129bdd812f974dccf37d74f61cb9d7414e28cbb41d7088767356035b972c1e417561770a89169676841e762e62644c6d0323
 EBUILD llvm-14.0.6-r4.ebuild 12316 BLAKE2B 1028363925a64b55006026498de4bd77f842f63aeeb63650a35b0c10e5c5356c0abe62486aaf36aa80d55cb68b6e272489c804599b1683990fdeaa58dab9abbf SHA512 64760fc8a63e0e1dba555bf9c79fd894ef8d9817481b077f9f4cf2d26f0f0bea153fe20ceb02f1469b61eaefc62f98bcdb36a4d98422bc0331f274b620da3f29
 EBUILD llvm-15.0.7-r3.ebuild 12489 BLAKE2B 1fa5e890b2fa5d3313a0354c4d72f0ce4a27a90bd8fd470196178a853ec238a57cf21ab4f8d7ee6370b8d106154de9d5cab657b922184ed27f491e4e06cd4960 SHA512 104cb5e8e95173b369911609f9f5b783d7465bd628cc067c5c342fc92384aa0ab8aabd0a303f383f8c46a951fbe50e4daa8048fd272998b7c0362b23ffcadd7f
 EBUILD llvm-15.0.7.ebuild 12558 BLAKE2B 1f73f500a38ee4e96438a5e478781a562d48e10d550cd6c5beaf37a754ead1f0bedb121be78c6bee229f694cb085ee665f7b33a44eacba0d6eeaa42b545f6ca7 SHA512 92dd8f7f8554ee24978ef4e1409f5356a95455d2b5006da0a5dbf27cc277962916a0e93d2f7630a0eb3a9f3a1167eb9aeec0a319de3637c5762a7c391d3f5330
-EBUILD llvm-16.0.5.ebuild 12496 BLAKE2B 3d83aae5848d16c823a7d239052fbc1a725884bcca8b66d70fa4386c33a58e6207e3ec2e023f46e93387a185dd34e9e06097f5b5d5f2f49d8d05fbe285db2880 SHA512 8eabe77506d91c5084f3f1cad9f68c5d68c412500fa5b006c84c8fd4572fb78265539cd02e9ebd607bcf1884c10335c675dc2e82bedc7c42006ce9e0b2c48812
-EBUILD llvm-16.0.6.9999.ebuild 12405 BLAKE2B fb6b33189286b3a61c33a847ce720589b0adc0fcf8160d1a7c4a0e602dd7fc76992ebc3e3163a9843af12d6ca322979cc9e33669d7b54d3381a0742106a7623f SHA512 121e92a2acaeb96d2639914a6f2f17a016b196a320e0b1c45987047bea032826630358005a8a6e8dcb86f95bcf1bc5d4796e1380fb49d226f12e977c2557bddf
+EBUILD llvm-16.0.5.ebuild 12495 BLAKE2B e7342f71d7218938e16634e9c993c6ac854f0d197101d917a57f9480c942053f3dfd00fe888428acaa260196d7bef29a30a7147f2cb2835c87a2edd6edbe02f3 SHA512 95c9bcb85329b91a3ed5927d3daa685c1f1d5b9a3a98e5013f6ccabc3f17275dd080aa98e634645d28462808fde8df225225619fdc9598cd1af986efcac2007a
+EBUILD llvm-16.0.6.ebuild 12516 BLAKE2B 3b8627f6165cace4db89596bb52bc6706672ff8ed9e500acefd71442d8f394cb4a787956a129bcce052597ebfafc0bb2ab2630024777399799102ea52458a8c1 SHA512 d7715d2bcdc32967b0674aa9c0c3a16a4fe704d3013bbdd5bc452755352480c20b578c1236190c273a69d84c55e67529bea116e048ed2d24d0987456c9649374
 EBUILD llvm-17.0.0.9999.ebuild 12689 BLAKE2B 188b2dc059691ac3a1d181e8aeeadbe836507ea419f966b12203eb64de15a5c0bed49074e055f91e0e98a07b80bdff355302e4a4b6f27f09ff23753a513848f6 SHA512 9fcda73df117c7fcab2be62ad8f8ed51794c7e247cfab39f2533948a3c105575f75459b6dccca7cdc425a13e45947b13cf40c0e5cf70b771b7755a2063562192
 EBUILD llvm-17.0.0_pre20230609.ebuild 12689 BLAKE2B 188b2dc059691ac3a1d181e8aeeadbe836507ea419f966b12203eb64de15a5c0bed49074e055f91e0e98a07b80bdff355302e4a4b6f27f09ff23753a513848f6 SHA512 9fcda73df117c7fcab2be62ad8f8ed51794c7e247cfab39f2533948a3c105575f75459b6dccca7cdc425a13e45947b13cf40c0e5cf70b771b7755a2063562192
 MISC metadata.xml 2782 BLAKE2B 4bd546287f630462c3f5d98cbd15a59a4cdef4023f86a5f4fe64fc5f10256cae7014d18823bd0909f4af4e42f299b6e7983c9c3c569cfab1ad38b0160f1eae40 SHA512 6bf1dc4f71f50e1eecc55cbb8366d8ed82a3dd328871acf1d808fc5e3ee4d203d623f81d9968bda45a87c72a2f20ed69b735b0a289b0052b048175cf6502e124
diff --git a/sys-devel/llvm/llvm-16.0.5.ebuild b/sys-devel/llvm/llvm-16.0.5.ebuild
index c72c4d351e80..eeeeca786e7a 100644
--- a/sys-devel/llvm/llvm-16.0.5.ebuild
+++ b/sys-devel/llvm/llvm-16.0.5.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
 SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
 IUSE="
 	+binutils-plugin debug doc exegesis libedit +libffi ncurses test xar
 	xml z3 zstd
diff --git a/sys-devel/llvm/llvm-16.0.6.9999.ebuild b/sys-devel/llvm/llvm-16.0.6.9999.ebuild
deleted file mode 100644
index 7898a8cd400c..000000000000
--- a/sys-devel/llvm/llvm-16.0.6.9999.ebuild
+++ /dev/null
@@ -1,518 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="https://llvm.org/"
-
-# Additional licenses:
-# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
-# 2. xxhash: BSD.
-# 3. MD5 code: public-domain.
-# 4. ConvertUTF.h: TODO.
-
-LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
-SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
-KEYWORDS=""
-IUSE="
-	+binutils-plugin debug doc exegesis libedit +libffi ncurses test xar
-	xml z3 zstd
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	sys-libs/zlib:0=[${MULTILIB_USEDEP}]
-	exegesis? ( dev-libs/libpfm:= )
-	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
-	libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
-	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
-	xar? ( app-arch/xar )
-	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
-	z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] )
-	zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-DEPEND="
-	${RDEPEND}
-	binutils-plugin? ( sys-libs/binutils-libs )
-"
-BDEPEND="
-	${PYTHON_DEPS}
-	dev-lang/perl
-	>=dev-util/cmake-3.16
-	sys-devel/gnuconfig
-	kernel_Darwin? (
-		<sys-libs/libcxx-${LLVM_VERSION}.9999
-		>=sys-devel/binutils-apple-5.1
-	)
-	doc? ( $(python_gen_any_dep '
-		dev-python/recommonmark[${PYTHON_USEDEP}]
-		dev-python/sphinx[${PYTHON_USEDEP}]
-	') )
-	libffi? ( virtual/pkgconfig )
-"
-# There are no file collisions between these versions but having :0
-# installed means llvm-config there will take precedence.
-RDEPEND="
-	${RDEPEND}
-	!sys-devel/llvm:0
-"
-PDEPEND="
-	sys-devel/llvm-common
-	sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR}
-	binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} )
-"
-
-LLVM_COMPONENTS=( llvm cmake )
-LLVM_TEST_COMPONENTS=( third-party )
-LLVM_MANPAGES=1
-LLVM_USE_TARGETS=provide
-llvm.org_set_globals
-
-python_check_deps() {
-	use doc || return 0
-
-	python_has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
-	python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-check_uptodate() {
-	local prod_targets=(
-		$(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \
-			| tail -n +2 | head -n -1)
-	)
-	local all_targets=(
-		lib/Target/*/
-	)
-	all_targets=( "${all_targets[@]#lib/Target/}" )
-	all_targets=( "${all_targets[@]%/}" )
-
-	local exp_targets=() i
-	for i in "${all_targets[@]}"; do
-		has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" )
-	done
-
-	if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then
-		eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!"
-		eqawarn "    Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}"
-		eqawarn "Expected: ${exp_targets[*]}"
-		eqawarn
-	fi
-
-	if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then
-		eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!"
-		eqawarn "    Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}"
-		eqawarn "Expected: ${prod_targets[*]}"
-	fi
-}
-
-check_distribution_components() {
-	if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
-		local all_targets=() my_targets=() l
-		cd "${BUILD_DIR}" || die
-
-		while read -r l; do
-			if [[ ${l} == install-*-stripped:* ]]; then
-				l=${l#install-}
-				l=${l%%-stripped*}
-
-				case ${l} in
-					# shared libs
-					LLVM|LLVMgold)
-						;;
-					# TableGen lib + deps
-					LLVMDemangle|LLVMSupport|LLVMTableGen)
-						;;
-					# static libs
-					LLVM*)
-						continue
-						;;
-					# meta-targets
-					distribution|llvm-libraries)
-						continue
-						;;
-					# used only w/ USE=doc
-					docs-llvm-html)
-						use doc || continue
-						;;
-				esac
-
-				all_targets+=( "${l}" )
-			fi
-		done < <(${NINJA} -t targets all)
-
-		while read -r l; do
-			my_targets+=( "${l}" )
-		done < <(get_distribution_components $"\n")
-
-		local add=() remove=()
-		for l in "${all_targets[@]}"; do
-			if ! has "${l}" "${my_targets[@]}"; then
-				add+=( "${l}" )
-			fi
-		done
-		for l in "${my_targets[@]}"; do
-			if ! has "${l}" "${all_targets[@]}"; then
-				remove+=( "${l}" )
-			fi
-		done
-
-		if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
-			eqawarn "get_distribution_components() is outdated!"
-			eqawarn "   Add: ${add[*]}"
-			eqawarn "Remove: ${remove[*]}"
-		fi
-		cd - >/dev/null || die
-	fi
-}
-
-src_prepare() {
-	# disable use of SDK on OSX, bug #568758
-	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
-
-	# Update config.guess to support more systems
-	cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die
-
-	# Verify that the ebuild is up-to-date
-	check_uptodate
-
-	llvm.org_src_prepare
-}
-
-get_distribution_components() {
-	local sep=${1-;}
-
-	local out=(
-		# shared libs
-		LLVM
-		LTO
-		Remarks
-
-		# tools
-		llvm-config
-
-		# common stuff
-		cmake-exports
-		llvm-headers
-
-		# libraries needed for clang-tblgen
-		LLVMDemangle
-		LLVMSupport
-		LLVMTableGen
-	)
-
-	if multilib_is_native_abi; then
-		out+=(
-			# utilities
-			llvm-tblgen
-			FileCheck
-			llvm-PerfectShuffle
-			count
-			not
-			yaml-bench
-			UnicodeNameMappingGenerator
-
-			# tools
-			bugpoint
-			dsymutil
-			llc
-			lli
-			lli-child-target
-			llvm-addr2line
-			llvm-ar
-			llvm-as
-			llvm-bcanalyzer
-			llvm-bitcode-strip
-			llvm-c-test
-			llvm-cat
-			llvm-cfi-verify
-			llvm-config
-			llvm-cov
-			llvm-cvtres
-			llvm-cxxdump
-			llvm-cxxfilt
-			llvm-cxxmap
-			llvm-debuginfo-analyzer
-			llvm-debuginfod
-			llvm-debuginfod-find
-			llvm-diff
-			llvm-dis
-			llvm-dlltool
-			llvm-dwarfdump
-			llvm-dwarfutil
-			llvm-dwp
-			llvm-exegesis
-			llvm-extract
-			llvm-gsymutil
-			llvm-ifs
-			llvm-install-name-tool
-			llvm-jitlink
-			llvm-jitlink-executor
-			llvm-lib
-			llvm-libtool-darwin
-			llvm-link
-			llvm-lipo
-			llvm-lto
-			llvm-lto2
-			llvm-mc
-			llvm-mca
-			llvm-ml
-			llvm-modextract
-			llvm-mt
-			llvm-nm
-			llvm-objcopy
-			llvm-objdump
-			llvm-opt-report
-			llvm-otool
-			llvm-pdbutil
-			llvm-profdata
-			llvm-profgen
-			llvm-ranlib
-			llvm-rc
-			llvm-readelf
-			llvm-readobj
-			llvm-reduce
-			llvm-remark-size-diff
-			llvm-remarkutil
-			llvm-rtdyld
-			llvm-sim
-			llvm-size
-			llvm-split
-			llvm-stress
-			llvm-strings
-			llvm-strip
-			llvm-symbolizer
-			llvm-tapi-diff
-			llvm-tli-checker
-			llvm-undname
-			llvm-windres
-			llvm-xray
-			obj2yaml
-			opt
-			sancov
-			sanstats
-			split-file
-			verify-uselistorder
-			yaml2obj
-
-			# python modules
-			opt-viewer
-		)
-
-		if llvm_are_manpages_built; then
-			out+=(
-				# manpages
-				docs-dsymutil-man
-				docs-llvm-dwarfdump-man
-				docs-llvm-man
-			)
-		fi
-		use doc && out+=(
-			docs-llvm-html
-		)
-
-		use binutils-plugin && out+=(
-			LLVMgold
-		)
-	fi
-
-	printf "%s${sep}" "${out[@]}"
-}
-
-multilib_src_configure() {
-	tc-is-gcc && filter-lto # GCC miscompiles LLVM, bug #873670
-
-	local ffi_cflags ffi_ldflags
-	if use libffi; then
-		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
-		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
-	fi
-
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		# disable appending VCS revision to the version to improve
-		# direct cache hit ratio
-		-DLLVM_APPEND_VC_REV=OFF
-		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
-
-		-DBUILD_SHARED_LIBS=OFF
-		-DLLVM_BUILD_LLVM_DYLIB=ON
-		-DLLVM_LINK_LLVM_DYLIB=ON
-		-DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
-
-		# cheap hack: LLVM combines both anyway, and the only difference
-		# is that the former list is explicitly verified at cmake time
-		-DLLVM_TARGETS_TO_BUILD=""
-		-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
-		-DLLVM_INCLUDE_BENCHMARKS=OFF
-		-DLLVM_INCLUDE_TESTS=$(usex test)
-		-DLLVM_BUILD_TESTS=$(usex test)
-
-		-DLLVM_ENABLE_FFI=$(usex libffi)
-		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
-		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
-		-DLLVM_ENABLE_LIBXML2=$(usex xml)
-		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
-		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
-		-DLLVM_ENABLE_EH=ON
-		-DLLVM_ENABLE_RTTI=ON
-		-DLLVM_ENABLE_Z3_SOLVER=$(usex z3)
-		-DLLVM_ENABLE_ZSTD=$(usex zstd)
-
-		-DLLVM_HOST_TRIPLE="${CHOST}"
-
-		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
-		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
-		# used only for llvm-objdump tool
-		-DLLVM_HAVE_LIBXAR=$(multilib_native_usex xar 1 0)
-
-		-DPython3_EXECUTABLE="${PYTHON}"
-
-		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
-		-DOCAMLFIND=NO
-	)
-
-	local suffix=
-	if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then
-		# the ABI of the main branch is not stable, so let's include
-		# the commit id in the SOVERSION to contain the breakage
-		suffix+="git${EGIT_VERSION::8}"
-	fi
-	if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
-		# Smart hack: alter version suffix -> SOVERSION when linking
-		# against libc++. This way we won't end up mixing LLVM libc++
-		# libraries with libstdc++ clang, and the other way around.
-		suffix+="+libcxx"
-		mycmakeargs+=(
-			-DLLVM_ENABLE_LIBCXX=ON
-		)
-	fi
-	mycmakeargs+=(
-		-DLLVM_VERSION_SUFFIX="${suffix}"
-	)
-
-	use test && mycmakeargs+=(
-		-DLLVM_LIT_ARGS="$(get_lit_flags)"
-	)
-
-	if multilib_is_native_abi; then
-		local build_docs=OFF
-		if llvm_are_manpages_built; then
-			build_docs=ON
-			mycmakeargs+=(
-				-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-				-DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
-				-DSPHINX_WARNINGS_AS_ERRORS=OFF
-			)
-		fi
-
-		mycmakeargs+=(
-			-DLLVM_BUILD_DOCS=${build_docs}
-			-DLLVM_ENABLE_OCAMLDOC=OFF
-			-DLLVM_ENABLE_SPHINX=${build_docs}
-			-DLLVM_ENABLE_DOXYGEN=OFF
-			-DLLVM_INSTALL_UTILS=ON
-		)
-		use binutils-plugin && mycmakeargs+=(
-			-DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
-		)
-	fi
-
-	# workaround BMI bug in gcc-7 (fixed in 7.4)
-	# https://bugs.gentoo.org/649880
-	# apply only to x86, https://bugs.gentoo.org/650506
-	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
-			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
-	then
-		local CFLAGS="${CFLAGS} -mno-bmi"
-		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
-	fi
-
-	# LLVM can have very high memory consumption while linking,
-	# exhausting the limit on 32-bit linker executable
-	use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory"
-
-	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
-	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-	cmake_src_configure
-
-	grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \
-			CMakeCache.txt ||
-		die "Incorrect version, did you update _LLVM_MASTER_MAJOR?"
-	multilib_is_native_abi && check_distribution_components
-}
-
-multilib_src_compile() {
-	tc-env_build cmake_build distribution
-
-	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
-	pax-mark m "${BUILD_DIR}"/bin/lli
-	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
-
-	if use test; then
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
-	fi
-}
-
-multilib_src_test() {
-	# respect TMPDIR!
-	local -x LIT_PRESERVES_TMP=1
-	cmake_build check
-}
-
-src_install() {
-	local MULTILIB_CHOST_TOOLS=(
-		/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config
-	)
-
-	local MULTILIB_WRAPPED_HEADERS=(
-		/usr/include/llvm/Config/llvm-config.h
-	)
-
-	local LLVM_LDPATHS=()
-	multilib-minimal_src_install
-
-	# move wrapped headers back
-	mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die
-}
-
-multilib_src_install() {
-	DESTDIR=${D} cmake_build install-distribution
-
-	# move headers to /usr/include for wrapping
-	rm -rf "${ED}"/usr/include || die
-	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die
-
-	LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" )
-}
-
-multilib_src_install_all() {
-	local revord=$(( 9999 - ${LLVM_MAJOR} ))
-	newenvd - "60llvm-${revord}" <<-_EOF_
-		PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin"
-		# we need to duplicate it in ROOTPATH for Portage to respect...
-		ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin"
-		MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-		LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
-	_EOF_
-
-	docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-	llvm_install_manpages
-}
-
-pkg_postinst() {
-	elog "You can find additional opt-viewer utility scripts in:"
-	elog "  ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer"
-	elog "To use these scripts, you will need Python along with the following"
-	elog "packages:"
-	elog "  dev-python/pygments (for opt-viewer)"
-	elog "  dev-python/pyyaml (for all of them)"
-}
diff --git a/sys-devel/llvm/llvm-16.0.6.ebuild b/sys-devel/llvm/llvm-16.0.6.ebuild
new file mode 100644
index 000000000000..153f34455877
--- /dev/null
+++ b/sys-devel/llvm/llvm-16.0.6.ebuild
@@ -0,0 +1,519 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="https://llvm.org/"
+
+# Additional licenses:
+# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
+# 2. xxhash: BSD.
+# 3. MD5 code: public-domain.
+# 4. ConvertUTF.h: TODO.
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
+SLOT="${LLVM_MAJOR}/${LLVM_SOABI}"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+IUSE="
+	+binutils-plugin debug doc exegesis libedit +libffi ncurses test xar
+	xml z3 zstd
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	sys-libs/zlib:0=[${MULTILIB_USEDEP}]
+	exegesis? ( dev-libs/libpfm:= )
+	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
+	libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
+	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
+	xar? ( app-arch/xar )
+	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
+	z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] )
+	zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="
+	${RDEPEND}
+	binutils-plugin? ( sys-libs/binutils-libs )
+"
+BDEPEND="
+	${PYTHON_DEPS}
+	dev-lang/perl
+	>=dev-util/cmake-3.16
+	sys-devel/gnuconfig
+	kernel_Darwin? (
+		<sys-libs/libcxx-${LLVM_VERSION}.9999
+		>=sys-devel/binutils-apple-5.1
+	)
+	doc? ( $(python_gen_any_dep '
+		dev-python/recommonmark[${PYTHON_USEDEP}]
+		dev-python/sphinx[${PYTHON_USEDEP}]
+	') )
+	libffi? ( virtual/pkgconfig )
+"
+# There are no file collisions between these versions but having :0
+# installed means llvm-config there will take precedence.
+RDEPEND="
+	${RDEPEND}
+	!sys-devel/llvm:0
+"
+PDEPEND="
+	sys-devel/llvm-common
+	sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR}
+	binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} )
+"
+
+LLVM_COMPONENTS=( llvm cmake )
+LLVM_TEST_COMPONENTS=( third-party )
+LLVM_MANPAGES=1
+LLVM_PATCHSET=${PV}
+LLVM_USE_TARGETS=provide
+llvm.org_set_globals
+
+python_check_deps() {
+	use doc || return 0
+
+	python_has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]"
+}
+
+check_uptodate() {
+	local prod_targets=(
+		$(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \
+			| tail -n +2 | head -n -1)
+	)
+	local all_targets=(
+		lib/Target/*/
+	)
+	all_targets=( "${all_targets[@]#lib/Target/}" )
+	all_targets=( "${all_targets[@]%/}" )
+
+	local exp_targets=() i
+	for i in "${all_targets[@]}"; do
+		has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" )
+	done
+
+	if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then
+		eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!"
+		eqawarn "    Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}"
+		eqawarn "Expected: ${exp_targets[*]}"
+		eqawarn
+	fi
+
+	if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then
+		eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!"
+		eqawarn "    Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}"
+		eqawarn "Expected: ${prod_targets[*]}"
+	fi
+}
+
+check_distribution_components() {
+	if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
+		local all_targets=() my_targets=() l
+		cd "${BUILD_DIR}" || die
+
+		while read -r l; do
+			if [[ ${l} == install-*-stripped:* ]]; then
+				l=${l#install-}
+				l=${l%%-stripped*}
+
+				case ${l} in
+					# shared libs
+					LLVM|LLVMgold)
+						;;
+					# TableGen lib + deps
+					LLVMDemangle|LLVMSupport|LLVMTableGen)
+						;;
+					# static libs
+					LLVM*)
+						continue
+						;;
+					# meta-targets
+					distribution|llvm-libraries)
+						continue
+						;;
+					# used only w/ USE=doc
+					docs-llvm-html)
+						use doc || continue
+						;;
+				esac
+
+				all_targets+=( "${l}" )
+			fi
+		done < <(${NINJA} -t targets all)
+
+		while read -r l; do
+			my_targets+=( "${l}" )
+		done < <(get_distribution_components $"\n")
+
+		local add=() remove=()
+		for l in "${all_targets[@]}"; do
+			if ! has "${l}" "${my_targets[@]}"; then
+				add+=( "${l}" )
+			fi
+		done
+		for l in "${my_targets[@]}"; do
+			if ! has "${l}" "${all_targets[@]}"; then
+				remove+=( "${l}" )
+			fi
+		done
+
+		if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
+			eqawarn "get_distribution_components() is outdated!"
+			eqawarn "   Add: ${add[*]}"
+			eqawarn "Remove: ${remove[*]}"
+		fi
+		cd - >/dev/null || die
+	fi
+}
+
+src_prepare() {
+	# disable use of SDK on OSX, bug #568758
+	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
+
+	# Update config.guess to support more systems
+	cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die
+
+	# Verify that the ebuild is up-to-date
+	check_uptodate
+
+	llvm.org_src_prepare
+}
+
+get_distribution_components() {
+	local sep=${1-;}
+
+	local out=(
+		# shared libs
+		LLVM
+		LTO
+		Remarks
+
+		# tools
+		llvm-config
+
+		# common stuff
+		cmake-exports
+		llvm-headers
+
+		# libraries needed for clang-tblgen
+		LLVMDemangle
+		LLVMSupport
+		LLVMTableGen
+	)
+
+	if multilib_is_native_abi; then
+		out+=(
+			# utilities
+			llvm-tblgen
+			FileCheck
+			llvm-PerfectShuffle
+			count
+			not
+			yaml-bench
+			UnicodeNameMappingGenerator
+
+			# tools
+			bugpoint
+			dsymutil
+			llc
+			lli
+			lli-child-target
+			llvm-addr2line
+			llvm-ar
+			llvm-as
+			llvm-bcanalyzer
+			llvm-bitcode-strip
+			llvm-c-test
+			llvm-cat
+			llvm-cfi-verify
+			llvm-config
+			llvm-cov
+			llvm-cvtres
+			llvm-cxxdump
+			llvm-cxxfilt
+			llvm-cxxmap
+			llvm-debuginfo-analyzer
+			llvm-debuginfod
+			llvm-debuginfod-find
+			llvm-diff
+			llvm-dis
+			llvm-dlltool
+			llvm-dwarfdump
+			llvm-dwarfutil
+			llvm-dwp
+			llvm-exegesis
+			llvm-extract
+			llvm-gsymutil
+			llvm-ifs
+			llvm-install-name-tool
+			llvm-jitlink
+			llvm-jitlink-executor
+			llvm-lib
+			llvm-libtool-darwin
+			llvm-link
+			llvm-lipo
+			llvm-lto
+			llvm-lto2
+			llvm-mc
+			llvm-mca
+			llvm-ml
+			llvm-modextract
+			llvm-mt
+			llvm-nm
+			llvm-objcopy
+			llvm-objdump
+			llvm-opt-report
+			llvm-otool
+			llvm-pdbutil
+			llvm-profdata
+			llvm-profgen
+			llvm-ranlib
+			llvm-rc
+			llvm-readelf
+			llvm-readobj
+			llvm-reduce
+			llvm-remark-size-diff
+			llvm-remarkutil
+			llvm-rtdyld
+			llvm-sim
+			llvm-size
+			llvm-split
+			llvm-stress
+			llvm-strings
+			llvm-strip
+			llvm-symbolizer
+			llvm-tapi-diff
+			llvm-tli-checker
+			llvm-undname
+			llvm-windres
+			llvm-xray
+			obj2yaml
+			opt
+			sancov
+			sanstats
+			split-file
+			verify-uselistorder
+			yaml2obj
+
+			# python modules
+			opt-viewer
+		)
+
+		if llvm_are_manpages_built; then
+			out+=(
+				# manpages
+				docs-dsymutil-man
+				docs-llvm-dwarfdump-man
+				docs-llvm-man
+			)
+		fi
+		use doc && out+=(
+			docs-llvm-html
+		)
+
+		use binutils-plugin && out+=(
+			LLVMgold
+		)
+	fi
+
+	printf "%s${sep}" "${out[@]}"
+}
+
+multilib_src_configure() {
+	tc-is-gcc && filter-lto # GCC miscompiles LLVM, bug #873670
+
+	local ffi_cflags ffi_ldflags
+	if use libffi; then
+		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+	fi
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		# disable appending VCS revision to the version to improve
+		# direct cache hit ratio
+		-DLLVM_APPEND_VC_REV=OFF
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
+		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+		-DBUILD_SHARED_LIBS=OFF
+		-DLLVM_BUILD_LLVM_DYLIB=ON
+		-DLLVM_LINK_LLVM_DYLIB=ON
+		-DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
+
+		# cheap hack: LLVM combines both anyway, and the only difference
+		# is that the former list is explicitly verified at cmake time
+		-DLLVM_TARGETS_TO_BUILD=""
+		-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+		-DLLVM_INCLUDE_BENCHMARKS=OFF
+		-DLLVM_INCLUDE_TESTS=$(usex test)
+		-DLLVM_BUILD_TESTS=$(usex test)
+
+		-DLLVM_ENABLE_FFI=$(usex libffi)
+		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
+		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
+		-DLLVM_ENABLE_LIBXML2=$(usex xml)
+		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
+		-DLLVM_ENABLE_EH=ON
+		-DLLVM_ENABLE_RTTI=ON
+		-DLLVM_ENABLE_Z3_SOLVER=$(usex z3)
+		-DLLVM_ENABLE_ZSTD=$(usex zstd)
+
+		-DLLVM_HOST_TRIPLE="${CHOST}"
+
+		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
+		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
+		# used only for llvm-objdump tool
+		-DLLVM_HAVE_LIBXAR=$(multilib_native_usex xar 1 0)
+
+		-DPython3_EXECUTABLE="${PYTHON}"
+
+		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
+		-DOCAMLFIND=NO
+	)
+
+	local suffix=
+	if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then
+		# the ABI of the main branch is not stable, so let's include
+		# the commit id in the SOVERSION to contain the breakage
+		suffix+="git${EGIT_VERSION::8}"
+	fi
+	if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+		# Smart hack: alter version suffix -> SOVERSION when linking
+		# against libc++. This way we won't end up mixing LLVM libc++
+		# libraries with libstdc++ clang, and the other way around.
+		suffix+="+libcxx"
+		mycmakeargs+=(
+			-DLLVM_ENABLE_LIBCXX=ON
+		)
+	fi
+	mycmakeargs+=(
+		-DLLVM_VERSION_SUFFIX="${suffix}"
+	)
+
+	use test && mycmakeargs+=(
+		-DLLVM_LIT_ARGS="$(get_lit_flags)"
+	)
+
+	if multilib_is_native_abi; then
+		local build_docs=OFF
+		if llvm_are_manpages_built; then
+			build_docs=ON
+			mycmakeargs+=(
+				-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
+				-DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
+				-DSPHINX_WARNINGS_AS_ERRORS=OFF
+			)
+		fi
+
+		mycmakeargs+=(
+			-DLLVM_BUILD_DOCS=${build_docs}
+			-DLLVM_ENABLE_OCAMLDOC=OFF
+			-DLLVM_ENABLE_SPHINX=${build_docs}
+			-DLLVM_ENABLE_DOXYGEN=OFF
+			-DLLVM_INSTALL_UTILS=ON
+		)
+		use binutils-plugin && mycmakeargs+=(
+			-DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
+		)
+	fi
+
+	# workaround BMI bug in gcc-7 (fixed in 7.4)
+	# https://bugs.gentoo.org/649880
+	# apply only to x86, https://bugs.gentoo.org/650506
+	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
+			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
+	then
+		local CFLAGS="${CFLAGS} -mno-bmi"
+		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
+	fi
+
+	# LLVM can have very high memory consumption while linking,
+	# exhausting the limit on 32-bit linker executable
+	use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory"
+
+	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+	cmake_src_configure
+
+	grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \
+			CMakeCache.txt ||
+		die "Incorrect version, did you update _LLVM_MASTER_MAJOR?"
+	multilib_is_native_abi && check_distribution_components
+}
+
+multilib_src_compile() {
+	tc-env_build cmake_build distribution
+
+	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
+	pax-mark m "${BUILD_DIR}"/bin/lli
+	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
+
+	if use test; then
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
+	fi
+}
+
+multilib_src_test() {
+	# respect TMPDIR!
+	local -x LIT_PRESERVES_TMP=1
+	cmake_build check
+}
+
+src_install() {
+	local MULTILIB_CHOST_TOOLS=(
+		/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config
+	)
+
+	local MULTILIB_WRAPPED_HEADERS=(
+		/usr/include/llvm/Config/llvm-config.h
+	)
+
+	local LLVM_LDPATHS=()
+	multilib-minimal_src_install
+
+	# move wrapped headers back
+	mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die
+}
+
+multilib_src_install() {
+	DESTDIR=${D} cmake_build install-distribution
+
+	# move headers to /usr/include for wrapping
+	rm -rf "${ED}"/usr/include || die
+	mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die
+
+	LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" )
+}
+
+multilib_src_install_all() {
+	local revord=$(( 9999 - ${LLVM_MAJOR} ))
+	newenvd - "60llvm-${revord}" <<-_EOF_
+		PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin"
+		# we need to duplicate it in ROOTPATH for Portage to respect...
+		ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin"
+		MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
+		LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
+	_EOF_
+
+	docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man"
+	llvm_install_manpages
+}
+
+pkg_postinst() {
+	elog "You can find additional opt-viewer utility scripts in:"
+	elog "  ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer"
+	elog "To use these scripts, you will need Python along with the following"
+	elog "packages:"
+	elog "  dev-python/pygments (for opt-viewer)"
+	elog "  dev-python/pyyaml (for all of them)"
+}
diff --git a/sys-devel/llvmgold/Manifest b/sys-devel/llvmgold/Manifest
index 09fa934cc961..b9229f44f14d 100644
--- a/sys-devel/llvmgold/Manifest
+++ b/sys-devel/llvmgold/Manifest
@@ -1,5 +1,5 @@
 EBUILD llvmgold-14.ebuild 576 BLAKE2B c9493f322fa0e387411df160c28078a514510e684f01c415a035c93868dd5a16ae718f10af0debe2e1a4112ea0864890a81a89ebf3fefc55ffdc89adc743524f SHA512 7cdb73379b9f6db22abde1f01043e28b8bfd797f3123f77d31ab3166e2c8d72747aad0963e8f6a41a0a01a19ea29eb468d869b5dbc7a35eb016a4a89c57715c3
 EBUILD llvmgold-15.ebuild 576 BLAKE2B c9493f322fa0e387411df160c28078a514510e684f01c415a035c93868dd5a16ae718f10af0debe2e1a4112ea0864890a81a89ebf3fefc55ffdc89adc743524f SHA512 7cdb73379b9f6db22abde1f01043e28b8bfd797f3123f77d31ab3166e2c8d72747aad0963e8f6a41a0a01a19ea29eb468d869b5dbc7a35eb016a4a89c57715c3
-EBUILD llvmgold-16.ebuild 589 BLAKE2B dc0432379234e24032fe1c2a9ba90c6e3ad325951ba00b7e4d8b600d03cf52a1f4045fa5ff6bde6c392ec7f014b1596e9ce7c467fc0237bf2981c07cda4e6d8b SHA512 a897e7a9612e0edf11bead9d33aae4a076cb6c6ba3599bc0e2bbe12913d740a569594a7dcef3af2dc49a481bf0f1ba5bdcf3659d7741e1b5951bd62efe7dc466
+EBUILD llvmgold-16.ebuild 588 BLAKE2B 1245dbea5723f5d96eebc3a50e9324b8caebd63a357ed0f7a9ef9a21dc0ec7b9e1e3716c23636eb7f9dc0a7244471198d28712933e03c9540dba89ead395b243 SHA512 8ed066d3d462272ecba181429633f68660e312fa7690fb69dd94c82979c3adbd238f6c2a1db55820e5d03a0966376ee732b5af73beaf2da922247f25a9e53bfe
 EBUILD llvmgold-17.ebuild 538 BLAKE2B a3424159e17fb2fb91ee0ebc7b84bee83b48c0bc672bad2d55fde1be98066b718352cab72f422b4a7a6e33e7ac98463ef433fb6f7c37e27570359d2fdcd7bd75 SHA512 906506a5430e1c3f39b49f8e3b5bb6981f1781a14d3dff59f57d872f3790fe146e5e4e757f1e6486558c77d0ee6bff7bf1bc784d4d1b5e2ecc81e6bfbb335c13
 MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685
diff --git a/sys-devel/llvmgold/llvmgold-16.ebuild b/sys-devel/llvmgold/llvmgold-16.ebuild
index 83a4359d7099..750c2ab3434c 100644
--- a/sys-devel/llvmgold/llvmgold-16.ebuild
+++ b/sys-devel/llvmgold/llvmgold-16.ebuild
@@ -9,7 +9,7 @@ S=${WORKDIR}
 
 LICENSE="public-domain"
 SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
 
 RDEPEND="
 	sys-devel/llvm:${PV}[binutils-plugin]
-- 
cgit v1.2.3