klimek added a comment. Yea, the a b(c) problem is the olden C++ problem clang-format will never be able to solve, thus all these crazy heuristics.
So, inching closer to understanding this - I totally missed the isLiteral() that short-circuits out before. I'm more happy with your current approach, except I'd turn it around: I'd only short-circuit out of the loop returning false in line 2064 if isLiteral() && (TemplateOpenerLevel > 0). Alternatively, we could try to skip things within template <> - don't we have the closing > for an opening < in MatchingParen? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59309/new/ https://reviews.llvm.org/D59309 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits