summaryrefslogtreecommitdiff
path: root/src/bindings
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2017-08-30 20:55:27 -0700
committerGitHub <noreply@github.com>2017-08-30 20:55:27 -0700
commit546d795470ca7c30fc62fe9b6c7b8e5838e1eed4 (patch)
tree443f7101c4246b684ce21a04704d769eb2db15ad /src/bindings
parentd7dadde871ae4775748695b0b7f9deee49576c0a (diff)
Use thread_local instead of compiler extensions (#210)
C++11 introduced the thread_local keyword, so we don't need to use non-standard extensions or our custom pthread extension anymore. The behavior was previously introduced as a workaround in commit 753a072c542c1c254d7c6adbf10e091ba585ede5. This commit introduces the macro CVC4_THREAD_LOCAL that can be used to declare variables as thread local. For Swig, this macro is defined to be empty.
Diffstat (limited to 'src/bindings')
-rw-r--r--src/bindings/swig.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/bindings/swig.h b/src/bindings/swig.h
index f73ddd9bb..053cb7172 100644
--- a/src/bindings/swig.h
+++ b/src/bindings/swig.h
@@ -26,15 +26,9 @@
#endif /* SWIG_VERSION */
%import "cvc4_public.h"
-#warning "Working around a SWIG segfault in C++ template parsing."
-//%import "base/tls.h"
-#define CVC4_THREADLOCAL(__type...) __type
-#define CVC4_THREADLOCAL_PUBLIC(__type...) CVC4_PUBLIC __type
-#define CVC4_THREADLOCAL_TYPE(__type...) __type
+%import "base/tls.h"
-// swig doesn't like the __thread storage class...
-#define __thread
-// ...or GCC attributes
+// swig doesn't like GCC attributes
#define __attribute__(x)
#endif /* __CVC4__BINDINGS__SWIG_H */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback