bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit a459e6e7984bb3f88f95b587b0cde4a6f8095242
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Thu Mar 3 12:36:00 2022 +0100
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Thu Mar 3 17:37:54 2022 +0100

    Avoid loplugin:noexcept
    
    ...when building on Linux with Clang -stdlib=libc++,
    
    > In file included from 
bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:41:
    > bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx:156:51: error: Replace 
legacy dynamic 'throw ()' exception specification with 'noexcept' 
[loplugin:noexcept]
    > extern "C" __cxa_eh_globals * __cxa_get_globals() throw();
    >                                                   ^~~~~~~
    
    (The situation with respect to these exception specifications is a bit 
unclear,
    recent <https://github.com/itanium-cxx-abi/cxx-abi/blob/main/abi-eh.html>
    doesn't mention any exception specifications for those effectively extern 
"C"
    functions, and recent
    
<https://github.com/llvm/llvm-project/blob/main/libcxxabi/src/cxa_exception.h>
    doesn't have an exception specification for __cxa_get_globals and recent
    <https://github.com/llvm/llvm-project/blob/main/libcxxabi/include/cxxabi.h>
    doesn't have one for __cxa_current_exception_type though it has `throw()` 
for
    __cxa_allocate_exception.  On the other hand, recent
    
<https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libstdc%2B%2B-v3/libsupc%2B%2B/cxxabi.h>
    and
    
<https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libstdc%2B%2B-v3/libsupc%2B%2B/cxxabi_init_exception.h>
    have _GLIBCXX_NOTHROW exception specifications for all three functions, 
which
    expands to `noexcept` for C++11 and beyond.)
    
    Change-Id: I1582c9d3b42977af011d4dc49674fdf12d5ea5ce
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130926
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx 
b/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx
index edcb46d0da2a..d7657bcc04be 100644
--- a/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx
+++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx
@@ -153,19 +153,19 @@ struct __cxa_eh_globals {
 
 #if !HAVE_CXXABI_H_CXA_GET_GLOBALS
 namespace __cxxabiv1 {
-extern "C" __cxa_eh_globals * __cxa_get_globals() throw();
+extern "C" __cxa_eh_globals * __cxa_get_globals() noexcept;
 }
 #endif
 
 #if !HAVE_CXXABI_H_CXA_CURRENT_EXCEPTION_TYPE
 namespace __cxxabiv1 {
-extern "C" std::type_info *__cxa_current_exception_type() throw();
+extern "C" std::type_info *__cxa_current_exception_type() noexcept;
 }
 #endif
 
 #if !HAVE_CXXABI_H_CXA_ALLOCATE_EXCEPTION
 namespace __cxxabiv1 {
-extern "C" void * __cxa_allocate_exception(std::size_t thrown_size) throw();
+extern "C" void * __cxa_allocate_exception(std::size_t thrown_size) noexcept;
 }
 #endif
 

Reply via email to