mgehre added inline comments.
================ Comment at: clang-tidy/modernize/NoexceptCorrectnessCheck.cpp:60 + N.getNodeAs<FunctionDecl>("direct_throwing_decl")) { + // FIXME how is that done? i did not find a noThrow predicate + //if (ThrowingDecl->isNoThrow()) { ---------------- JonasToth wrote: > How can i find out the exception spepcification in a `FunctionDecl`? I would > like to check if `noexcept` might be added when it is not justified. Try `ThrowingDecl ->getType()->getAs<FunctionProtoType>()->getNoexceptSpec()` ================ Comment at: clang-tidy/modernize/NoexceptCorrectnessCheck.cpp:48 + // hasThrowingExpression + anyOf(hasDescendant(cxxDynamicCastExpr()), + hasDescendant(cxxNewExpr())), ---------------- `dynamic_cast` can only throw if the new type is a reference type. ================ Comment at: test/clang-tidy/modernize-noexcept-correctness.cpp:4 +float throwing(float x) { + // CHECK-MESSAGES: :[[@LINE-1]]: 7: warning: function can be marked noexcept(false) + // CHECK-MESSAGES: :[[@LINE+2]]: 5: note: throw expression here ---------------- I find it helpful to get fixits for adding "noexcept", but not so much for adding noexcept(false) because this is already the default. I would prefer to hide generation of fixits that state the default behind an option. ================ Comment at: test/clang-tidy/modernize-noexcept-correctness.cpp:42 + +// Could throw indirectly. +float complex_wrongly_noexcept(float x, float y) noexcept { ---------------- Use `FIXME` here? ================ Comment at: test/clang-tidy/modernize-noexcept-correctness.cpp:48 + +// Could be marked noexcept, but wont right now. +float complex_non_throwing(float x, float y) { ---------------- Use `FIXME` here? Repository: rL LLVM https://reviews.llvm.org/D31370 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits