Here’s the relevant code and the relevant error, I’m not really sure what to make of it. That’s in thread.cpp, the next is in log.cpp… and Here’s the relevant error: Answer I think the problem is the declaration of the parameter func. It is declared as a void pointer instead of a pointer to a function returning void. Instead of,
Tag: c++11
What is the performance penalty of C++11 thread_local variables in GCC 4.8?
From the GCC 4.8 draft changelog: G++ now implements the C++11 thread_local keyword; this differs from the GNU __thread keyword primarily in that it allows dynamic initialization and destruction semantics. Unfortunately, this support requires a run-time penalty for references to non-function-local thread_local variables even if they don’t need dynamic initialization, so users may want to continue to use __thread for