angelgarcia added a comment. I've done a couple of runs for each version, and these are the results (I have clang-tidy compiled with the option "RelWithDebInfo"):
$ time clang-tidy -checks=* test.cpp -- -std=c++11 Without looking for overlaps. Suppressed 23463 warnings (23463 in non-user code). Use -header-filter=.* to display errors from all non-system headers. real 2m14.572s user 2m13.136s sys 0m0.483s real 2m15.103s user 2m13.361s sys 0m0.687s Bounding boxes Suppressed 23463 warnings (23463 in non-user code). Use -header-filter=.* to display errors from all non-system headers. real 2m14.208s user 2m13.051s sys 0m0.643s real 2m16.368s user 2m14.286s sys 0m0.986s Quadratic Suppressed 23463 warnings (23463 in non-user code). Use -header-filter=.* to display errors from all non-system headers. real 2m15.130s user 2m13.627s sys 0m0.499s real 2m15.322s user 2m13.660s sys 0m0.683s The time is about the same for all three versions. Note that the first version doesn't do any sweep at all, and the last version invariably does (23463 choose 2) = 275244453 sweeps. The amount of time required to do this seems to be too low compared to the time that clang-tidy takes to output these diagnostics. Also, the fact that all three versions take about the same time is a bit suspicious, but I double-checked that I was doing it right (I did a small file with would cause overlapping and I checked if the message "note: this fix will not be applied because it overlaps with another fix" was there before each run). I intended to implement Daniel's idea to check out which one was more efficient, but with these results in sight I don't think it is worth it. http://reviews.llvm.org/D13516 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits