bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

pthread-thread: fix compilation error in C++ mode on MSVC


From: Bruno Haible
Subject: pthread-thread: fix compilation error in C++ mode on MSVC
Date: Wed, 11 Dec 2019 11:40:11 +0100
User-agent: KMail/5.1.3 (Linux/4.4.0-166-generic; KDE/5.18.0; x86_64; ; )

When building a testdir with C++ tests on MSVC 14, I see this error:

source='../../gltests/test-pthread-c++.cc' object='test-pthread-c++.obj' 
libtool=no \
DEPDIR=.deps depmode=msvc7 /bin/sh ../../build-aux/depcomp \
/home/bruno/msvc/compile cl -nologo -DHAVE_CONFIG_H -DEXEEXT=\".exe\" -I. 
-I../../gltests -I..  -DGNULIB_STRICT_CHECKING=1 -DIN_GNULIB_TESTS=1 -I. 
-I../../gltests -I.. -I../../gltests/.. -I../gllib -I../../gltests/../gllib 
-D_WIN32_WINNT=_WIN32_WINNT_WINXP -I/usr/local/msvc64/include  -MD -c -o 
test-pthread-c++.obj `cygpath -w '../../gltests/test-pthread-c++.cc'`
test-pthread-c++.cc
../gllib\pthread.h(1201): error C3829: standard attribute 'noreturn' may only 
be applied to functions
make[4]: *** [Makefile:9886: test-pthread-c++.obj] Error 2

This patch fixes it.


2019-12-11  Bruno Haible  <address@hidden>

        pthread-thread: Fix compilation error in C++ mode on MSVC.
        * lib/pthread.in.h (pthread_exit): Don't use _Noreturn in the
        _GL_CXXALIAS_RPL invocation.

diff --git a/lib/pthread.in.h b/lib/pthread.in.h
index a70d023..a6fb3d9 100644
--- a/lib/pthread.in.h
+++ b/lib/pthread.in.h
@@ -684,7 +684,7 @@ _GL_WARN_ON_USE (pthread_join, "pthread_join is not 
portable - "
 #   define pthread_exit rpl_pthread_exit
 #  endif
 _GL_FUNCDECL_RPL (pthread_exit, _Noreturn void, (void *value));
-_GL_CXXALIAS_RPL (pthread_exit, _Noreturn void, (void *value));
+_GL_CXXALIAS_RPL (pthread_exit, void, (void *value));
 # else
 #  if !@HAVE_PTHREAD_EXIT@
 _GL_FUNCDECL_SYS (pthread_exit, _Noreturn void, (void *value));




reply via email to

[Prev in Thread] Current Thread [Next in Thread]