[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-26 Thread Discookie via Phabricator via cfe-commits
Discookie added a comment. @steakhal gentle ping for one last round of reviews CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158156/new/ https://reviews.llvm.org/D158156 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.ll

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-28 Thread Discookie via Phabricator via cfe-commits
Discookie updated this revision to Diff 557438. Discookie added a comment. Replaced backticks with single quotes. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158156/new/ https://reviews.llvm.org/D158156 Files: clang/docs/analyzer/checkers.rst clang/include/clang/StaticAnalyzer/Ch

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-28 Thread Discookie via Phabricator via cfe-commits
Discookie updated this revision to Diff 557439. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158156/new/ https://reviews.llvm.org/D158156 Files: clang/docs/analyzer/checkers.rst clang/include/clang/StaticAnalyzer/Checkers/Checkers.td clang/lib/StaticAnalyzer/Checkers/CMakeLists.tx

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-28 Thread Discookie via Phabricator via cfe-commits
Discookie marked 5 inline comments as done. Discookie added a comment. Ran the checker on a couple larger projects, but no real-world reports found so far (same as DeleteWithNonVirtualDtor). Can't tell if it's an engine limitation or just the bug being uncommon in general. Co

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-08-17 Thread Discookie via Phabricator via cfe-commits
Discookie created this revision. Discookie added reviewers: NoQ, donat.nagy, balazske. Discookie added projects: clang, All. Herald added subscribers: steakhal, manas, ASDenysPetrov, martong, dkrupp, Szelethus, mikhail.ramalho, a.sidorin, szepet, baloghadamsoftware, xazax.hun. Discookie requested

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-08-21 Thread Discookie via Phabricator via cfe-commits
Discookie planned changes to this revision. Discookie added a comment. Indeed it would make more sense to separate checkers into their own classes, but using a shared base. This checker doesn't have quite as advanced logic as MallocChecker, so there's not that much of a need for a single class m

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-11 Thread Discookie via Phabricator via cfe-commits
Discookie updated this revision to Diff 556402. Discookie marked 8 inline comments as done. Discookie added a comment. Added a test for taking last upcast only for the note tag. For now the visitor matches all explicit casts, because there are too many edge cases to count for now wrt. explicit u

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-11 Thread Discookie via Phabricator via cfe-commits
Discookie added inline comments. Comment at: clang/docs/analyzer/checkers.rst:1793-1803 +.. code-block:: cpp + + Base *create() { + Base *x = new Derived[10]; // note: conversion from derived to base + // happened here + return x; + } --

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-18 Thread Discookie via Phabricator via cfe-commits
Discookie updated this revision to Diff 556933. Discookie added a comment. Updated the visitor to track all conversions, and have type names for clarity. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158156/new/ https://reviews.llvm.org/D158156 Files: clang/docs/analyzer/checkers.rst

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-18 Thread Discookie via Phabricator via cfe-commits
Discookie marked 12 inline comments as done. Discookie added inline comments. Comment at: clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp:192 + + const Stmt *S = N->getStmtForDiagnostics(); + if (!S) steakhal wrote: > Discookie wrote: > > steakhal wrote:

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-18 Thread Discookie via Phabricator via cfe-commits
Discookie marked 6 inline comments as done. Discookie added inline comments. Comment at: clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp:220 N->getLocationContext()); - return std::make_shared(Pos, OS.str(), true); + return std::make_shared(

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-05 Thread Discookie via Phabricator via cfe-commits
Discookie updated this revision to Diff 555821. Discookie added a comment. Refactored the checkers to use a shared base class, otherwise I kept the same functionality. I'll push this diff in a way where the blame transfers between the files, but I don't think keeping the file name the same make

[PATCH] D158156: [analyzer] Add C++ array delete checker

2023-09-05 Thread Discookie via Phabricator via cfe-commits
Discookie marked 8 inline comments as done. Discookie added a comment. Fixed the formatting issues as well. Comment at: clang/docs/analyzer/checkers.rst:1787-1804 +.. _alpha-cplusplus-ArrayDelete: + +alpha.cplusplus.ArrayDelete (C++) +"""

[PATCH] D146712: [clang-tidy] Add portability-non-portable-integer-constant check

2023-03-23 Thread Discookie via Phabricator via cfe-commits
Discookie created this revision. Discookie added reviewers: aaron.ballman, njames93, carlosgalvezp. Discookie added a project: clang-tools-extra. Herald added subscribers: PiotrZSL, ChuanqiXu, xazax.hun. Herald added a project: All. Discookie requested review of this revision. This check finds int