Backported from r155737.

diff --git a/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h b/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h
index 0ae5dc8..2a7464f 100644
--- a/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h
+++ b/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h
@@ -451,7 +451,7 @@ private:
       }
     }
     
-    enum { MaxDepth = 256 };
+    enum { MaxDepth = 512 };
     
     bool diagnoseOverflow();
     bool diagnoseMissingClose();