about summary refs log tree commit diff
path: root/src/rt/rust_builtin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rt/rust_builtin.cpp')
-rw-r--r--src/rt/rust_builtin.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/rt/rust_builtin.cpp b/src/rt/rust_builtin.cpp
index 7d75d557bf7..28dd4b51a13 100644
--- a/src/rt/rust_builtin.cpp
+++ b/src/rt/rust_builtin.cpp
@@ -671,6 +671,27 @@ rust_win32_rand_release() {
 }
 
 #endif
+
+#if defined(__WIN32__)
+
+extern "C" CDECL int
+rust_crit_section_size() { return sizeof(CRITICAL_SECTION); }
+extern "C" CDECL int
+rust_pthread_mutex_t_size() { return 0; }
+extern "C" CDECL int
+rust_pthread_cond_t_size() { return 0; }
+
+#else
+
+extern "C" CDECL int
+rust_crit_section_size() { return 0; }
+extern "C" CDECL int
+rust_pthread_mutex_t_size() { return sizeof(pthread_mutex_t); }
+extern "C" CDECL int
+rust_pthread_cond_t_size() { return sizeof(pthread_cond_t); }
+
+#endif
+
 //
 // Local Variables:
 // mode: C++