restart of branch, this is to include changes from trunk

svn path=/sandbox-branches/birbacher/fix_iostreams/boost/preprocessor.hpp; revision=40545