When a long set of expressions is chained it may overflow the stack. This warns about the issue.
Note I'm not sure whether AnalyzeImplicitConversions is the best place to add this test, but it was the best I could find. Also not sure what the naming convention for these helpers is. Another option is to put the original code in a lambda in AnalyzeImplicitConversions and thus remove the extra function.
Fixes https://bugs.llvm.org/show_bug.cgi?id=14030
Depends on D69478 (if this patch is unwanted it is possible to remove the dependency.)
The note should explain what the problem is. If you want to suggest a solution, that could be OK, but should be secondary and non-obvious from the description of the problem. In this case, a note saying the expression is too complex would cover both explaining what the problem is, and implying the solution (make the expression less complex).
Also, Clang diagnostics start with lowercase letters.