The C2888 error appears to be a compiler bug, see:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99218
or
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=101615
I use gcc, and have only tried compiling libpoet with msvc9. I added a
workaround you could try, see:
http://www.comedi.org/cgi-bin/viewvc.cgi/libpoet/poet/monitor_locks.hpp?r1=1.17&r2=1.18
However, you'll probably hit many more compiler bugs, so it's really up to
you or someone interested in using msvc 8 to find workarounds.