BOOST_VMD_IDENTITY_RESULT — Macro which wraps any result which can return its value using BOOST_VMD_IDENTITY or 'item BOOST_VMD_EMPTY'.
// In header: <boost/vmd/identity.hpp> BOOST_VMD_IDENTITY_RESULT(result)
result = any single result returned when BOOST_VMD_IDENTITY is used or 'item BOOST_VMD_EMPTY'.
The reason for this macro is to smooth over a problem when using VC++ with BOOST_VMD_IDENTITY. If your BOOST_VMD_IDENTITY macro can be used where VC++ is the compiler then you need to surround your macro code which could return a result with this macro in order that VC++ handles BOOST_VMD_IDENTITY correctly.
If you are not using VC++ you do not have to use this macro, but doing so does no harm.