Use __pragma on MSVC
All C++11 compilers support _Pragma to insert pragmas inline into code and within macros. All compilers, that is, except for visual studio because Microsoft has to be contrarian and make life miserable for all programmers. Instead, you have to use __pragma with visual studio.