The object-like macro, when defined to nothing prior to including this header file, forces the dual library choice of the C++ standard type_traits implementation. If the C++ standard type_traits implementation is not available a preprocessor error is generated.