From nobody Sat Apr 20 10:34:32 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 4VM7DS47vhz5HWNv; Sat, 20 Apr 2024 10:34:32 +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 4VM7DS1mXsz4Sc8; Sat, 20 Apr 2024 10:34:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1713609272; 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=jk3Lz4p8scNxeBAfgY1MqZEREWaiAiYRUTPtguRH9hM=; b=iza8sQ0989+3BM7v08gz4iZmNo2T37pZDfEHsNoYGOJ0yIAUp17tcI8h6qh/U9RbJIkoVb eXEXX6hnxPRbgeb+alQZ413tdebg1v1oev/d1Zlf1CEByiSaa7IExiaPJPsgv5xYvwitxo sPwT84tCX3sqKPpTax45cKmkfTnhP/lybe/0rlo30MRo0tfRzHCNkHZyOACTG9s6mNXkpe vwq81uCMboSrD/JREAMdwgVSFoBUQVp6a+63j57CVEPi/WkDyToSXGMqki9gQvlzLgwf4a +ygVv4SCVr4CKgWkMDNOTWeywdeLbzW2JeAlMtLc6jqO6HRJ3DZ/Uc2oSW6+OQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1713609272; a=rsa-sha256; cv=none; b=KYXoeyA30rpvdPrd0q/r375fy4WvxYr5/EJI6z/z92tXqlsQiCPrPrym/ud4Yf+g3iVDls w07mwyuz6u6Oftd+4GW/cQ/uQ+o5rcU1IWKJJftxkFCEti7/U+EcZhgtS4bayPfMi9qTVw kmxp3www/74h5PRZK9S5fs44tMkaFTtjiSzwW8Zjv4uaq77T92nTSIHGQLpxNG7LZIJDCi Wl9SYf3uHz9SxWmB8lUShl/TGqSbAYMvZes2F/byejopz0V6eF85Um7LooSbB7AtN7418Y SYeJ/V+wF2/XFT+OR7nQJz52bBiFI+ixy+CoRPYlL8ZMOtUiSp1+3K66rRUUKA== 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=1713609272; 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=jk3Lz4p8scNxeBAfgY1MqZEREWaiAiYRUTPtguRH9hM=; b=C4QD1D9ZXH1pcsSsqTwanHTq0mGSAsYtbPmMj93DEWqEM/U2qdyqPZ0ITEIFcqdL77rP7m /gxamP3CmPhUHuUxnapUZ2yrQgIu0sdIRsD3gieLN9tmw1M8JzkhmC+LMf3D0k4cKNrQkL qzQjPrTYjRJB9q5w4Y5XAlm74940X1dmHh6QNVYqyfl4R2I/BoJ+MREbInfMmlvXbpjtip 78/vgiqDTCP/PKMGD8Q/D+wZHIjHizBS9FugWdEWNFK/FrDFSh/hiJpts1GZgenMCLmLm5 azgdSfqkTHEZ1yaLYINnTEJkKa142PDWp63ShARTB0gGixfgkUPPmWnbda7eQA== 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 4VM7DS1LghzYkj; Sat, 20 Apr 2024 10:34:32 +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 43KAYWhP013666; Sat, 20 Apr 2024 10:34:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 43KAYWF0013663; Sat, 20 Apr 2024 10:34:32 GMT (envelope-from git) Date: Sat, 20 Apr 2024 10:34:32 GMT Message-Id: <202404201034.43KAYWF0013663@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: 206cf542ef75 - stable/13 - 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/13 X-Git-Reftype: branch X-Git-Commit: 206cf542ef75ae895d82cb518e8de81b8a403d85 Auto-Submitted: auto-generated The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=206cf542ef75ae895d82cb518e8de81b8a403d85 commit 206cf542ef75ae895d82cb518e8de81b8a403d85 Author: Dimitry Andric AuthorDate: 2024-01-26 15:03:20 +0000 Commit: Dimitry Andric CommitDate: 2024-04-19 21:24:45 +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;