On 29/10/2012, at 5:53 AM, rmbishop wrote: > That fix seemed to work, but unmasked another problem: > > build\release\src\pthread\pthread_condv.cpp(68) : error C3861: 'trunc': > identifi > er not found > build\release\src\pthread\pthread_condv.cpp(69) : error C3861: 'trunc': > identifi > er not found > > Did some looking and found that the trunc function is not available for > Visual C++ 10.0.
Hmm ... my man page says: SYNOPSIS #include <math.h> double trunc(double x); long double truncl(long double x); float truncf(float x); STANDARDS The trunc() functions conform to ISO/IEC 9899:1999(E). However it isn't in the MSDN library. Lets try this: int flx_condv_t::timedwait(flx_mutex_t *m, double t) { struct timespec tv; tv.tv_sec = (unsigned long) (t); tv.tv_nsec = (unsigned long) ((t - floor (t)) * 1E9); return timedwait (m, &tv); } BTW: some of my calculations seem to be wrong. For example this is wrong: unsigned long t1 = abstime->tv_sec * 1000 + abstime->tv_nsec / 1000; Nano is E-9 not E-6. I'll check that too. For better or worse Felix is using "double in seconds" for all times to avoid this horrible confusion. -- john skaller skal...@users.sourceforge.net http://felix-lang.org ------------------------------------------------------------------------------ WINDOWS 8 is here. Millions of people. Your app in 30 days. Visit The Windows 8 Center at Sourceforge for all your go to resources. http://windows8center.sourceforge.net/ join-generation-app-and-make-money-coding-fast/ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language