Remove/fix invalid README entries. The well thought out strcpy function doesn't retur...
[oota-llvm.git] / lib / CodeGen / IntrinsicLowering.cpp
index 3852ebaf64253b0f7a92c4e032a999a51b5075f8..47625110ffa18a7d60aba2cfb4137224ff18459c 100644 (file)
@@ -85,9 +85,11 @@ static CallInst *ReplaceCallWith(const char *NewFn, CallInst *CI,
 }
 
 // VisualStudio defines setjmp as _setjmp
-#if defined(_MSC_VER) && defined(setjmp)
-#define setjmp_undefined_for_visual_studio
-#undef setjmp
+#if defined(_MSC_VER) && defined(setjmp) && \
+                         !defined(setjmp_undefined_for_msvc)
+#  pragma push_macro("setjmp")
+#  undef setjmp
+#  define setjmp_undefined_for_msvc
 #endif
 
 void IntrinsicLowering::AddPrototypes(Module &M) {