diff --git a/include/boost/typeof/typeof.hpp b/include/boost/typeof/typeof.hpp index a9d2fea..99033f9 100644 --- a/include/boost/typeof/typeof.hpp +++ b/include/boost/typeof/typeof.hpp @@ -110,24 +110,21 @@ # else # error typeof emulation is not supported # endif -# elif (_MSC_VER >= 1310) // 7.1, 8.0 +# elif (_MSC_VER >= 1310) // 7.1 -> # ifndef BOOST_TYPEOF_EMULATION # ifndef BOOST_TYPEOF_NATIVE -# define BOOST_TYPEOF_NATIVE +# ifndef _MSC_EXTENSIONS +# define BOOST_TYPEOF_EMULATION +# else +# define BOOST_TYPEOF_NATIVE +# endif # endif -# include -# define MSVC_TYPEOF_HACK # endif -/*# else // 8.0 -# ifndef BOOST_TYPEOF_NATIVE -# ifndef BOOST_TYPEOF_EMULATION -# define BOOST_TYPEOF_EMULATION -# endif -# else -# error native typeof is not supported -# endif*/ -# endif - +# ifdef BOOST_TYPEOF_NATIVE +# include +# define MSVC_TYPEOF_HACK +# endif +# endif #elif defined(__HP_aCC) # ifndef BOOST_TYPEOF_NATIVE # ifndef BOOST_TYPEOF_EMULATION