Compiler Warning (level 4) C4611

interaction between 'function' and C++ object destruction is non-portable

On some platforms, functions that include catch may not support C++ object semantics of destruction when out of scope.

To avoid unexpected behavior, avoid using catch in functions that have constructors and destructors.

This warning is only issued once; see pragma warning.