Guard Clang and GCC specific pragmas. Patch from STL@microsoft.com

llvm-svn: 267836
30 files changed