From nobody Sat Apr 20 10:32:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VM7B21F1qz5HW0h; Sat, 20 Apr 2024 10:32:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VM7B16mqyz4Pgx; Sat, 20 Apr 2024 10:32:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1713609146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aYgAng5bkAzYVXyA5lpRqy+fJyUsM/Ee8jiyoriSddo=; b=XzfebjYt3EuUXYHq69DURHDG8z3BvUkUvQN86ZayFAv8kOlTlikkJQIQzJqphtVtluOgJv 0f6R0vYxnZLvMgHdMhD/o/MvZVEMI1F8bFVnptGeXl8eZdEvFStvfahZQY4eyqcamjRshM Fyf+K5lFLhD4G2/Q9UpAtatH8KVABShDUJL3hroQyAeFGco9NvZ6WF3lr+jqf9F9j/qpnZ Y5G2eIkTVkauKfgXAc9m3/zB59wOxSrvXeM0Qmv2gYxRdW/Hr3+SBr2YhIapceHQxzrzrq 6kSCiN2xdhG0WUIiJbTgcPUW/CQ757mqDjKD+HzJrLbw22b0YT7+q9oYodsofw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1713609145; a=rsa-sha256; cv=none; b=CJMQf8yfAWdxEVP3WjCRWDRvxwOgf7VmO7Ry+oVZ+H6XurZMvZHvxDUfP7SKOWERjmL3CZ /AkDAGtcYhHmuW4KeiQErdugeuAT0f9eVFPSph7hjyYEk5wb1FZRm+dKv2v5dh/YgVnZMk Cc141hMK2HOrBhkMcx7D8yruI4qQ1r2wuFL57jbL6pJ0wdTGB1zWwyuRRKyVaGt8WanrJF AsNJxwsYHNPFIaI8La2jypjq3Ag5u/Bt6XaJXWfO8bgEcCezCc+dQ1H211MHsenq3B1dHz K5w95CDoFVPQwoeS9TbRnfh5D2Z8DIu251LYKzGCBzgb/e+2RTgR0PSczsEOgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1713609145; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aYgAng5bkAzYVXyA5lpRqy+fJyUsM/Ee8jiyoriSddo=; b=WC0iATx3rcgWxv6+dZyzDMzUpTVpq36UhrlxV5RUwPOMQQoGgBsGkKGomybGTwzv90MnBc 6AAbycD5qvaElGn7BUaiqPBI9Gagmfh5w0TrwVbEgbUBYqQbtiV27s60jtvCrWM+aBl4J3 ibzuBJb6WjHd1Dw6Y5PazGWwZYXe/fXLZCsdj/gu4DpHaO4EJ9osZipo5qeMnvDtNAX8TB vxIulc3K/QRNEqmcMwRGcI2NyhbdNtruMGnXCaUHjXMEyANaKdOsNM4LcLfZEEH0IcqRAb aDO9atnur2jMMCTf7MN2MadXQw8mcuU2BdN+d47aNsLPwkm8oc5sAbQT6DGvaA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VM7B16KBgzYk3; Sat, 20 Apr 2024 10:32:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 43KAWPJ7011017; Sat, 20 Apr 2024 10:32:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 43KAWP6m011014; Sat, 20 Apr 2024 10:32:25 GMT (envelope-from git) Date: Sat, 20 Apr 2024 10:32:25 GMT Message-Id: <202404201032.43KAWP6m011014@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 3f37aa84be74 - stable/14 - Tentatively apply https://github.com/libcxxrt/libcxxrt/pull/27 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3f37aa84be749be0963b388a02cdc58b4f1c7246 Auto-Submitted: auto-generated The branch stable/14 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=3f37aa84be749be0963b388a02cdc58b4f1c7246 commit 3f37aa84be749be0963b388a02cdc58b4f1c7246 Author: Dimitry Andric AuthorDate: 2024-01-26 15:03:20 +0000 Commit: Dimitry Andric CommitDate: 2024-04-19 21:14:14 +0000 Tentatively apply https://github.com/libcxxrt/libcxxrt/pull/27 This marks __cxa_allocate_exception, __cxa_free_exception and __cxa_init_primary_exception noexcept, to ensure compatibility with libc++'s declarations. PR: 276104 MFC after: 1 month (cherry picked from commit 3fb2e045791eb6f003205902cdc4f74702770ec6) --- contrib/libcxxrt/cxxabi.h | 6 +++--- contrib/libcxxrt/exception.cc | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/contrib/libcxxrt/cxxabi.h b/contrib/libcxxrt/cxxabi.h index e021f85c905a..ef4076a08a0a 100644 --- a/contrib/libcxxrt/cxxabi.h +++ b/contrib/libcxxrt/cxxabi.h @@ -204,12 +204,12 @@ __cxa_eh_globals *__cxa_get_globals_fast(void); std::type_info * __cxa_current_exception_type(); -void *__cxa_allocate_exception(size_t thrown_size); +void *__cxa_allocate_exception(size_t thrown_size) throw(); -void __cxa_free_exception(void* thrown_exception); +void __cxa_free_exception(void* thrown_exception) throw(); __cxa_exception *__cxa_init_primary_exception( - void *object, std::type_info* tinfo, void (*dest)(void *)); + void *object, std::type_info* tinfo, void (*dest)(void *)) throw(); /** * Throws an exception returned by __cxa_current_primary_exception(). This diff --git a/contrib/libcxxrt/exception.cc b/contrib/libcxxrt/exception.cc index b1659c902f56..35ff997dd445 100644 --- a/contrib/libcxxrt/exception.cc +++ b/contrib/libcxxrt/exception.cc @@ -121,7 +121,7 @@ static inline _Unwind_Reason_Code continueUnwinding(struct _Unwind_Exception *ex } -extern "C" void __cxa_free_exception(void *thrown_exception); +extern "C" void __cxa_free_exception(void *thrown_exception) throw(); extern "C" void __cxa_free_dependent_exception(void *thrown_exception); extern "C" void* __dynamic_cast(const void *sub, const __class_type_info *src, @@ -611,7 +611,7 @@ static void free_exception(char *e) * emergency buffer if malloc() fails, and may block if there are no such * buffers available. */ -extern "C" void *__cxa_allocate_exception(size_t thrown_size) +extern "C" void *__cxa_allocate_exception(size_t thrown_size) throw() { size_t size = thrown_size + sizeof(__cxa_exception); char *buffer = alloc_or_die(size); @@ -633,7 +633,7 @@ extern "C" void *__cxa_allocate_dependent_exception(void) * In this implementation, it is also called by __cxa_end_catch() and during * thread cleanup. */ -extern "C" void __cxa_free_exception(void *thrown_exception) +extern "C" void __cxa_free_exception(void *thrown_exception) throw() { __cxa_exception *ex = reinterpret_cast<__cxa_exception*>(thrown_exception) - 1; // Free the object that was thrown, calling its destructor @@ -794,7 +794,7 @@ static void throw_exception(__cxa_exception *ex) } extern "C" __cxa_exception *__cxa_init_primary_exception( - void *object, std::type_info* tinfo, void (*dest)(void *)) { + void *object, std::type_info* tinfo, void (*dest)(void *)) throw() { __cxa_exception *ex = reinterpret_cast<__cxa_exception*>(object) - 1; ex->referenceCount = 0;