
I just committed a new version to CVS; pretty much the last version I posted with void return, but incorporating John Maddock's changes for generating the name so as to not require std::stringstream, or even strstream. This version is header only, in contrast to the older version (and current versions for other platforms), which required a C++ file. This allows the call_once function to be a template. Note, that windows.h *is not included* --- explicit prototypes are included for the required functions, following the lead of boost/detail/interlocked.hpp (which has been updated to include InterlockedExchange). Despite tendering a version that handles non-void returns, I am not sure how to do it right (destruction order for statics makes it hard), so I have left that out for now. Anthony -- Anthony Williams Software Developer