[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-06-11 Thread Piotr Zegar via Phabricator via cfe-commits
PiotrZSL added inline comments. Comment at: clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp:69 void StringConstructorCheck::registerMatchers(MatchFinder *Finder) { + const auto SignedCharType = qualType(isAnyCharacter(), isSignedInteger()); const auto ZeroEx

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-06-11 Thread Chris Cotter via Phabricator via cfe-commits
ccotter added a comment. Thanks, fixed the first false positive example you gave. Let me think about the second example in your most recent post: char c = '\n'; using Size = int; Size size = 10U; std::string str2(c, size); This is my newly added case `swapped4`, where one of my original

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-06-11 Thread Chris Cotter via Phabricator via cfe-commits
ccotter updated this revision to Diff 530349. ccotter added a comment. - Exclude false positive Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 Files: clang-tools-extra/clang-tidy/bugprone/StringConstru

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-06-11 Thread Piotr Zegar via Phabricator via cfe-commits
PiotrZSL requested changes to this revision. PiotrZSL added a comment. This revision now requires changes to proceed. I run into false positive with this example: using UInt8 = unsigned char; UInt8 size = 5U; std::string str2(size, 'x'); // warning: string constructor arguments are proba

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-06-10 Thread Chris Cotter via Phabricator via cfe-commits
ccotter added a comment. bump please? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-05-06 Thread Chris Cotter via Phabricator via cfe-commits
ccotter added a comment. bump please? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-05-06 Thread Chris Cotter via Phabricator via cfe-commits
ccotter updated this revision to Diff 520143. ccotter added a comment. rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 Files: clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp cl

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-29 Thread Chris Cotter via Phabricator via cfe-commits
ccotter updated this revision to Diff 509541. ccotter added a comment. rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 Files: clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp clang-

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-25 Thread Chris Cotter via Phabricator via cfe-commits
ccotter marked an inline comment as done. ccotter added inline comments. Comment at: clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp:70-74 + const auto CharExpr = expr(anyOf( + ignoringParenImpCasts(characterLiteral()), + declRefExpr(hasDeclaration(v

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-25 Thread Chris Cotter via Phabricator via cfe-commits
ccotter updated this revision to Diff 508345. ccotter marked 4 inline comments as done. ccotter added a comment. - Add more cases to swapped params - Change message, add more tests Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://r

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-25 Thread Carlos Galvez via Phabricator via cfe-commits
carlosgalvezp added inline comments. Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone/string-constructor.rst:25 + std::string str(buf[1], 5); // First arg should be '&buf[1]'? + std::string str2((int)buf[1], 5); // Ok - explicitly cast to express intent

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-07 Thread Piotr Zegar via Phabricator via cfe-commits
PiotrZSL added inline comments. Comment at: clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp:97 + const auto CharToIntCastExpr = implicitCastExpr( + hasSourceExpression(expr(hasType(qualType(isAnyCharacter(), + hasImplicitDestinationType(NonCharacte

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-03-06 Thread Piotr Zegar via Phabricator via cfe-commits
PiotrZSL added inline comments. Comment at: clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp:70-74 + const auto CharExpr = expr(anyOf( + ignoringParenImpCasts(characterLiteral()), + declRefExpr(hasDeclaration(varDecl(hasType(qualType(isAnyCharacter())

[PATCH] D143971: [clang-tidy] Flag more buggy string constructor cases

2023-02-26 Thread Chris Cotter via Phabricator via cfe-commits
ccotter updated this revision to Diff 500645. ccotter added a comment. - Add more cases to swapped params Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143971/new/ https://reviews.llvm.org/D143971 Files: clang-tools-extra/clang-tidy/bugprone/Str