diff --git a/src/plugins/projectexplorer/toolchain.cpp b/src/plugins/projectexplorer/toolchain.cpp
index 429006cc9b99af87c75980ded8a0e3ab4518e982..0bd82b9f169223e972f5d6377c0d0a4e67aa5c40 100644
--- a/src/plugins/projectexplorer/toolchain.cpp
+++ b/src/plugins/projectexplorer/toolchain.cpp
@@ -174,6 +174,14 @@ QByteArray GccToolChain::predefinedMacros()
         cpp.closeWriteChannel();
         cpp.waitForFinished();
         m_predefinedMacros = cpp.readAllStandardOutput();
+
+#ifdef Q_OS_MAC
+        int idx = m_predefinedMacros.indexOf("#define __BLOCKS__ 1");
+        if (idx != -1) {
+            idx = m_predefinedMacros.indexOf("1", idx);
+            m_predefinedMacros[idx] = '0';
+        }
+#endif // Q_OS_MAC
     }
     return m_predefinedMacros;
 }