Compiling typos.cpp ends with an "LLVM ERROR: out of memory"
typos.cpp is a very simple file with n=10 int definitions and a function call with n arguments.
When clang analyzes this file it tries to correct typos in it. In order to do this it calls method clangSema::SemaExprCXX.cpp::CheckAndAdvanceTypoExprCorrectionStreams
The problem is that amount of calls is around 8^(n-1), which leads to a crash or infinitely long waiting time.
Extended Description
Compiling typos.cpp ends with an "LLVM ERROR: out of memory"
typos.cpp is a very simple file with n=10 int definitions and a function call with n arguments. When clang analyzes this file it tries to correct typos in it. In order to do this it calls method clangSema::SemaExprCXX.cpp::CheckAndAdvanceTypoExprCorrectionStreams
The problem is that amount of calls is around 8^(n-1), which leads to a crash or infinitely long waiting time.