
Short update: I have another patch here, this time against read_write_mutex.cpp, featuring another unused function. The other good news is that I have Boost threads running on a MIPS based embedded system, running on top of MS Windows CE. Changes by this patch: - _sntprintf() uses '%s' for TCHAR strings (char/wchar_t, depends on _UNICODE), while the arguments are always char strings. There is '%S' (capital S!) for the opposite character type. MSC, C99 and SUSv2 disagree in that aspect. - use the same tactic as for TryEnterCriticalSection to determine presence of IsDebuggerPresent() at runtime, so the same lib can run on older systems too and still leverage newer features. - fixed incorrect use of sn[w]printf() for cases the buffer is too small - increased buffer size to a more sensible value (format string ~50, func ~30, file ~MAX_PATH/255, expr ~60) - added newline to message - move boost_error from global namespace to anonymous one - some parts rather depend on the win32 API, not on whether one uses winthreads or pthreads - split off the non-win32 version for better readability However, this whole patch is not even necessary because the whole function is not used (tip: grep for boost_error, this reveals another unused one!). My success above with the MIPS board were made with the code removed, once I saw that the whole thing is not necessary I didn't bother testing it. Yes, I first rewrote the whole thing before realising that it is unused. Uli