On Jun 17 20:23, Corinna Vinschen wrote: > Second, I'm puzzeling over the #if expression (cut for a simple example): > > #if !defined(__INSIDE_CYGWIN__) || !defined(__cplusplus) > /* use symbols */ > #else > /* use const int cast to pointer */ > #endif > > So this is a problem in terms of constinit. Constinit is a C++20 > expression. But the condition will only define PTHREAD_... using the > symbols if this is either outside Cygwin, or if the Cygwin code is NOT > C++. > > The usage inside Cygwin seems upside down to me. Shouldn't it use the > symbols in C++ code but not in plain C? Or am I misunderstanding the > condition entirely?
Actually Cygwin doesn't use the PTHREAD macros at all outside C++ code.
