#ifndef SET_THR
#define SET_THR(t) \
STMT_START { \
- if (pthread_setspecific(thr_key, (void *) (t))) \
+ if (pthread_setspecific(PL_thr_key, (void *) (t))) \
croak("panic: pthread_setspecific"); \
} STMT_END
#endif /* SET_THR */
struct perl_thread *getTHR _((void));
# define THR getTHR()
# else
-# define THR ((struct perl_thread *) pthread_getspecific(thr_key))
+# define THR ((struct perl_thread *) pthread_getspecific(PL_thr_key))
# endif /* OLD_PTHREADS_API */
#endif /* THR */
*/
#ifndef dTHR
# define dTHR \
- struct perl_thread *thr = threadnum? THR : (struct perl_thread*)SvPVX(thrsv)
+ struct perl_thread *thr = PL_threadnum? THR : (struct perl_thread*)SvPVX(PL_thrsv)
#endif /* dTHR */
#ifndef INIT_THREADS
*/
#define LOCK_SV_MUTEX \
STMT_START { \
- if (threadnum) \
- MUTEX_LOCK(&sv_mutex); \
+ if (PL_threadnum) \
+ MUTEX_LOCK(&PL_sv_mutex); \
} STMT_END
#define UNLOCK_SV_MUTEX \
STMT_START { \
- if (threadnum) \
- MUTEX_UNLOCK(&sv_mutex); \
+ if (PL_threadnum) \
+ MUTEX_UNLOCK(&PL_sv_mutex); \
} STMT_END
#ifndef THREAD_RET_TYPE
#define ThrSETSTATE(t, s) STMT_START { \
(t)->flags &= ~THRf_STATE_MASK; \
(t)->flags |= (s); \
- DEBUG_L(PerlIO_printf(PerlIO_stderr(), \
+ DEBUG_S(PerlIO_printf(PerlIO_stderr(), \
"thread %p set to state %d\n", (t), (s))); \
} STMT_END
#define THR
/* Rats: if dTHR is just blank then the subsequent ";" throws an error */
+#ifdef WIN32
+#define dTHR extern int Perl___notused
+#else
#define dTHR extern int errno
+#endif
#endif /* USE_THREADS */