+#else
+ return 0;
+#endif
+}
+
+#ifdef NO_PTHREADS
+int dummy_pthread_create(pthread_t *pthread, const void *attr,
+ void *(*fn)(void *), void *data)
+{
+ /*
+ * Do nothing.
+ *
+ * The main purpose of this function is to break compiler's
+ * flow analysis and avoid -Wunused-variable false warnings.
+ */
+ return ENOSYS;
+}
+
+int dummy_pthread_init(void *data)
+{
+ /*
+ * Do nothing.
+ *
+ * The main purpose of this function is to break compiler's
+ * flow analysis or it may realize that functions like
+ * pthread_mutex_init() is no-op, which means the (static)
+ * variable is not used/initialized at all and trigger
+ * -Wunused-variable
+ */
+ return ENOSYS;