aaron.ballman added a comment. One concern I have is with RAII objects with "exception" in the name. You may already properly handle this, but I'd like to see a test case like:
struct ExceptionRAII { ExceptionRAII() {} ~ExceptionRAII() {} }; void foo() { ExceptionRAII E; // Don't trigger on this } ================ Comment at: clang-tidy/misc/ThrowKeywordMissingCheck.cpp:45 + diag(TemporaryExpr->getLocStart(), + "exception instantiated but not bound (did you intend to 'throw'?)"); +} ---------------- I'm not keen on the wording here ("bound" isn't a common phrase for exceptions). How about `"suspicious exception object created but not thrown; did you mean 'throw %0'"` and then pass in the text for the object construction? ================ Comment at: docs/clang-tidy/checks/misc-throw-keyword-missing.rst:6 + +This check warns about the potentially missing `throw` keyword. If a temporary object is created, +but the object's type derives from (or the same as) a class that has 'EXCEPTION', 'Exception' or ---------------- about the potentially -> about a potentially ================ Comment at: docs/clang-tidy/checks/misc-throw-keyword-missing.rst:7 +This check warns about the potentially missing `throw` keyword. If a temporary object is created, +but the object's type derives from (or the same as) a class that has 'EXCEPTION', 'Exception' or +'exception' in its name, we can assume that the programmer's intention was to throw that object. ---------------- or the same as -> or is the same as ================ Comment at: docs/clang-tidy/checks/misc-throw-keyword-missing.rst:14 + void f(int i) { + if(i < 0) { + // Exception is created but is not thrown ---------------- Can you format the code snippet? https://reviews.llvm.org/D43120 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits