[clang] [llvm] [clang-tools-extra] Add clang-tidy check to suggest replacement of conditional statement with std::min/std::max (PR #77816)

Bhuminjay Soni via cfe-commits cfe-commits at lists.llvm.org
Sun Jan 28 14:45:23 PST 2024


================
@@ -0,0 +1,240 @@
+//===--- UseStdMinMaxCheck.cpp - clang-tidy -------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "UseStdMinMaxCheck.h"
+#include "../utils/ASTUtils.h"
+#include "clang/AST/ASTContext.h"
+#include "clang/AST/RecursiveASTVisitor.h"
+#include "clang/ASTMatchers/ASTMatchFinder.h"
+#include "clang/Lex/Preprocessor.h"
+
+using namespace clang::ast_matchers;
+
+namespace clang::tidy::readability {
+
+static bool isImplicitCastType(const clang::CastKind castKind) {
----------------
11happy wrote:

this is to filter out some unnecessary Implicitcast types:
example:
```
class Foo{};

int main()
{
  std::vector<std::vector<Foo>> a;
    unsigned int b = a[0].size();
    if(a[0].size() > b)
        b = a[0].size();
  return 0 ;
  
}

```


https://github.com/llvm/llvm-project/pull/77816


More information about the cfe-commits mailing list