Index: cmake/modules/HandleLLVMOptions.cmake
===================================================================
--- cmake/modules/HandleLLVMOptions.cmake	(revision 192756)
+++ cmake/modules/HandleLLVMOptions.cmake	(working copy)
@@ -153,6 +158,10 @@
 if( MSVC )
   include(ChooseMSVCCRT)
 
+  # Visual C++ default stack size is 1MB. This is not enough for clang to 
+  # instantiate templates up to the default maximum depth allowed, 256.
+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -STACK:2097152")
+  
   if( MSVC10 )
     # MSVC 10 will complain about headers in the STL not being exported, but
     # will not complain in MSVC 11.
