[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #103219)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/103219 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #103219)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand ready_for_review https://github.com/llvm/llvm-project/pull/103219 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #102510)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: I've posted a fix as https://github.com/llvm/llvm-project/pull/103219 https://github.com/llvm/llvm-project/pull/102510 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #103219)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand updated https://github.com/llvm/llvm-project/pull/103219 >From cde9e0eb8090a95df22bc83527a68d385fa847a9 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Thu, 8 Aug 2024 14:22:03 -0300 Subject: [PATCH 1/3] [clang] Add frontend flag to enable support for broken exter

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #103219)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand updated https://github.com/llvm/llvm-project/pull/103219 >From cde9e0eb8090a95df22bc83527a68d385fa847a9 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Thu, 8 Aug 2024 14:22:03 -0300 Subject: [PATCH 1/4] [clang] Add frontend flag to enable support for broken exter

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #103219)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand closed https://github.com/llvm/llvm-project/pull/103219 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add frontend flag to enable support for broken external resugarers (PR #102510)

2024-08-13 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: https://github.com/llvm/llvm-project/pull/103219 has been merged as https://github.com/llvm/llvm-project/commit/661dda9df13c65ce021407bb726b558c7a414731. https://github.com/llvm/llvm-project/pull/102510 ___ cfe-commits mailing list cfe-co

[clang] [clang][dataflow] Collect local variables referenced within a functio… (PR #104459)

2024-08-15 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: Should we make this flag controlled? Or is the idea that analyses can simply ignore the new `Locals` field? https://github.com/llvm/llvm-project/pull/104459 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[clang] [clang][dataflow] Collect local variables referenced within a functio… (PR #104459)

2024-08-16 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: Looks good, but please add a test. Thanks! https://github.com/llvm/llvm-project/pull/104459 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libTooling] Fix `getFileRangeForEdit` for inner nested template types (PR #87673)

2024-04-05 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/87673 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libTooling] Fix `getFileRangeForEdit` for inner nested template types (PR #87673)

2024-04-05 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Nice work - really subtle! I'd been wondering how clang handles this issue (of relexing returning the wrong token because it lacked context). https://github.com/llvm/llvm-project/pull/87673 ___ cfe-

[clang] [libTooling] Fix `getFileRangeForEdit` for inner nested template types (PR #87673)

2024-04-05 Thread Yitzhak Mandelbaum via cfe-commits
@@ -510,6 +519,26 @@ int c = M3(3); Visitor.runOver(Code.code()); } +TEST(SourceCodeTest, InnerNestedTemplate) { ymand wrote: Add a test case that covers the case of the split being in the BeginToken? https://github.com/llvm/llvm-project/pull/87673 ___

[clang] [clang][dataflow] Reland #87320: Propagate locations from result objects to initializers. (PR #88316)

2024-04-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88316 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Remove deprecated alias `ControlFlowContext`. (PR #88358)

2024-04-11 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88358 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Expose fields, globals, and functions referenced. (PR #88534)

2024-04-12 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/88534 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Expose fields, globals, and functions referenced. (PR #88534)

2024-04-12 Thread Yitzhak Mandelbaum via cfe-commits
@@ -62,6 +62,52 @@ FieldSet getObjectFields(QualType Type); bool containsSameFields(const FieldSet &Fields, const RecordStorageLocation::FieldToLoc &FieldLocs); +/// Returns the fields of a `RecordDecl` that are initialized by an +/// `InitListExpr`, in

[clang] [clang][dataflow] Expose fields, globals, and functions referenced. (PR #88534)

2024-04-12 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Thanks! https://github.com/llvm/llvm-project/pull/88534 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Expose fields, globals, and functions referenced. (PR #88534)

2024-04-12 Thread Yitzhak Mandelbaum via cfe-commits
@@ -62,6 +62,52 @@ FieldSet getObjectFields(QualType Type); bool containsSameFields(const FieldSet &Fields, const RecordStorageLocation::FieldToLoc &FieldLocs); +/// Returns the fields of a `RecordDecl` that are initialized by an +/// `InitListExpr`, in

[clang] [clang][dataflow] Handle `AtomicExpr` in `ResultObjectVisitor`. (PR #94963)

2024-06-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/94963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [clang][nullability] Don't return null fields from `getReferencedDecls()`. (PR #94983)

2024-06-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Thanks! I'm once again struck by how much this project would benefit from Nullability annotations/checking. https://github.com/llvm/llvm-project/pull/94983 ___ cfe-commits mailing list cfe-commits@l

[clang] [clang][dataflow] Rewrite `getReferencedDecls()` with a `RecursiveASTVisitor`. (PR #93461)

2024-05-29 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/93461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Rewrite `getReferencedDecls()` with a `RecursiveASTVisitor`. (PR #93461)

2024-05-29 Thread Yitzhak Mandelbaum via cfe-commits
@@ -188,90 +188,97 @@ static MemberExpr *getMemberForAccessor(const CXXMemberCallExpr &C) { return nullptr; } -static void getReferencedDecls(const Decl &D, ReferencedDecls &Referenced) { - insertIfGlobal(D, Referenced.Globals); - insertIfFunction(D, Referenced.Functions)

[clang] [clang][dataflow] Rewrite `getReferencedDecls()` with a `RecursiveASTVisitor`. (PR #93461)

2024-05-29 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/93461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Rewrite `getReferencedDecls()` with a `RecursiveASTVisitor`. (PR #93461)

2024-05-29 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/93461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][nullability] Propagate storage location / value of `++`/`--` operators. (PR #94217)

2024-06-03 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/94217 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Propagate storage location of compound assignment operators. (PR #94332)

2024-06-04 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/94332 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fix result object location for builtin `<=>`. (PR #88726)

2024-04-15 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/88726 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fix result object location for builtin `<=>`. (PR #88726)

2024-04-15 Thread Yitzhak Mandelbaum via cfe-commits
@@ -508,6 +508,11 @@ class ResultObjectVisitor : public RecursiveASTVisitor { isa(E)) { return; } +if (auto *Op = dyn_cast(E); ymand wrote: aside: Might lines 506 through 553 be better expressed as a switch on `E->getStmtClass()`? http

[clang] [clang][dataflow] Fix result object location for builtin `<=>`. (PR #88726)

2024-04-15 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88726 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fix result object location for builtin `<=>`. (PR #88726)

2024-04-15 Thread Yitzhak Mandelbaum via cfe-commits
@@ -508,6 +508,11 @@ class ResultObjectVisitor : public RecursiveASTVisitor { isa(E)) { return; } +if (auto *Op = dyn_cast(E); ymand wrote: I guess the `isa` calls were what we really jumped out since they amount to N calls and tests on

[clang] [clang][dataflow] Expose getReferencedDecls and relocate free functions. (PR #88754)

2024-04-15 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Thanks! https://github.com/llvm/llvm-project/pull/88754 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Refactor `PropagateResultObject()` with a switch statement. (PR #88865)

2024-04-16 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: Clearly, this is a matter of taste, so I would defer to your opinion, since you are the primary maintainer of this code. But, personally, I prefer this style since it makes clear that the body of the function is a single case analysis, which is not obvious from the series of if st

[clang] [clang][dataflow] Support `StmtExpr` in `PropagateResultObject()`. (PR #88872)

2024-04-16 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88872 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Treat `BuiltinBitCastExpr` correctly in `PropagateResultObject()`. (PR #88875)

2024-04-16 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88875 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Expose getReferencedDecls and relocate free functions. (PR #88754)

2024-04-16 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand closed https://github.com/llvm/llvm-project/pull/88754 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Refactor `PropagateResultObject()` with a switch statement. (PR #88865)

2024-04-17 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Thanks! https://github.com/llvm/llvm-project/pull/88865 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix -Wnullability-completeness false-positive in dependent code (PR #88727)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/88727 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Model conditional operator correctly. (PR #89213)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/89213 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Model conditional operator correctly. (PR #89213)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/89213 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Model conditional operator correctly. (PR #89213)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
@@ -657,17 +658,22 @@ class TransferVisitor : public ConstStmtVisitor { } void VisitConditionalOperator(const ConditionalOperator *S) { -// FIXME: Revisit this once flow conditions are added to the framework. For -// `a = b ? c : d` we can add `b => a == c && !b =

[clang] [clang][dataflow] Model conditional operator correctly. (PR #89213)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
@@ -5243,6 +5243,67 @@ TEST(TransferTest, BinaryOperatorComma) { }); } +TEST(TransferTest, ConditionalOperatorValue) { + std::string Code = R"( +void target(bool Cond, bool B1, bool B2) { + bool JoinSame = Cond ? B1 : B1; + bool JoinDifferent = Cond ? B1 :

[clang] [clang][dataflow] Support `CXXParenListInitExpr` in `PropagateResultObject()`. (PR #89235)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/89235 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Support `CXXParenListInitExpr` in `PropagateResultObject()`. (PR #89235)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/89235 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Support `CXXParenListInitExpr` in `PropagateResultObject()`. (PR #89235)

2024-04-18 Thread Yitzhak Mandelbaum via cfe-commits
@@ -401,6 +401,29 @@ class ResultObjectVisitor : public RecursiveASTVisitor { return true; } + void + PropagateResultObjectToRecordInitList(const RecordInitListHelper &InitList, +RecordStorageLocation *Loc) { +for (auto [Bas

[clang] [clang][dataflow] Expose getReferencedDecls for a Stmt. (PR #89444)

2024-04-19 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/89444 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Expose getReferencedDecls for a Stmt. (PR #89444)

2024-04-19 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand closed https://github.com/llvm/llvm-project/pull/89444 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[clang][dataflow] Model conditional operator correctly." with fixes (PR #89596)

2024-04-22 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/89596 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Handle this-capturing lambdas in field initializers. (PR #99519)

2024-07-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/99519 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Handle this-capturing lambdas in field initializers. (PR #99519)

2024-07-18 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/99519 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Handle this-capturing lambdas in field initializers. (PR #99519)

2024-07-22 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand closed https://github.com/llvm/llvm-project/pull/99519 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fix crash when `ConstantExpr` is used in conditional operator. (PR #90112)

2024-04-25 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/90112 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fix crash when `operator=` result type is not destination type. (PR #90898)

2024-05-03 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/90898 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Don't propagate result objects in unevaluated contexts (reland #90438) (PR #91172)

2024-05-06 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91172 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Strengthen pointer comparison. (PR #75170)

2024-05-06 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/75170 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Add `reachedLimit()` to the `Solver` interface. (PR #91320)

2024-05-07 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91320 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Allow `DataflowAnalysisContext` to use a non-owned `Solver`. (PR #91316)

2024-05-07 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/91316 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Allow `DataflowAnalysisContext` to use a non-owned `Solver`. (PR #91316)

2024-05-07 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91316 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Allow `DataflowAnalysisContext` to use a non-owned `Solver`. (PR #91316)

2024-05-07 Thread Yitzhak Mandelbaum via cfe-commits
@@ -209,6 +221,9 @@ class DataflowAnalysisContext { using DenseMapInfo::isEqual; }; + DataflowAnalysisContext(Solver &S, std::unique_ptr OwnedSolver, ymand wrote: Please add comments either here or on the fields relating S and OwnedSolver. https://git

[clang] [clang][dataflow] Allow `DataflowAnalysisContext` to use a non-owned `Solver`. (PR #91316)

2024-05-07 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91316 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [clang][dataflow] Make `SolverTest` a type-parameterized test. (PR #91455)

2024-05-08 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91455 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand commented: I think we can do this without resorting to a pointer union and templating of the initialization functions, but it will take a little refactoring. First, notice that `stmt` doesn't make sense for the CallStack. The call stack serves two purposes -- to avoid

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
ymand wrote: > I agree with the usefulness of storing the initial target separately, > reducing checks and branching based on whether the current target is a `Stmt` > or `Function`. Since I was touching everywhere `CallStack` was used anyway, I > went ahead with not pushing the starting `Funct

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand edited https://github.com/llvm/llvm-project/pull/91616 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
@@ -718,29 +730,46 @@ class Environment { void pushCallInternal(const FunctionDecl *FuncDecl, ArrayRef Args); + // FIXME: Add support for resetting globals after function calls to enable + // the implementation of sound analyses. + /// Assigns st

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. Nice! https://github.com/llvm/llvm-project/pull/91616 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-10 Thread Yitzhak Mandelbaum via cfe-commits
@@ -476,7 +476,7 @@ runTypeErasedDataflowAnalysis( PrettyStackTraceAnalysis CrashInfo(ACFG, "runTypeErasedDataflowAnalysis"); std::optional MaybeStartingEnv; - if (InitEnv.callStackSize() == 1) { + if (InitEnv.callStackSize() == 0) { ymand wrote: aside:

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-13 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/91616 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][dataflow] Fully support Environment construction for Stmt analysis. (PR #91616)

2024-05-15 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand closed https://github.com/llvm/llvm-project/pull/91616 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [clang][dataflow] Make `CNFFormula` externally accessible. (PR #92401)

2024-05-17 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand approved this pull request. https://github.com/llvm/llvm-project/pull/92401 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [clang-tidy] Add support for bsl::optional (PR #101450)

2024-08-02 Thread Yitzhak Mandelbaum via cfe-commits
https://github.com/ymand requested changes to this pull request. https://github.com/llvm/llvm-project/pull/101450 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [clang-tidy] Add support for bsl::optional (PR #101450)

2024-08-02 Thread Yitzhak Mandelbaum via cfe-commits
@@ -38,10 +38,22 @@ namespace clang { namespace dataflow { -static bool isTopLevelNamespaceWithName(const NamespaceDecl &NS, -llvm::StringRef Name) { - return NS.getDeclName().isIdentifier() && NS.getName() == Name && - NS.getPa

[clang] [clang-tools-extra] [clang-tidy] Add support for bsl::optional (PR #101450)

2024-08-02 Thread Yitzhak Mandelbaum via cfe-commits
@@ -784,6 +814,12 @@ auto buildTransferMatchSwitch() { isOptionalMemberCallWithNameMatcher(hasName("operator bool")), transferOptionalHasValueCall) + // NullableValue::isNull + // Only NullableValue has isNull + .CaseOfCFGStmt( + isO

[clang] bd1fac2 - Add assert on End iteration distance to Rewriter::getRewrittenText.

2022-01-25 Thread Yitzhak Mandelbaum via cfe-commits
Author: Ashley Hedberg Date: 2022-01-25T17:26:13Z New Revision: bd1fac2fafd7a1afacce05cd53a3741a2214f5f1 URL: https://github.com/llvm/llvm-project/commit/bd1fac2fafd7a1afacce05cd53a3741a2214f5f1 DIFF: https://github.com/llvm/llvm-project/commit/bd1fac2fafd7a1afacce05cd53a3741a2214f5f1.diff LOG

[clang] 0944c19 - [libTooling] Adds more support for constructing object access expressions.

2022-01-25 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-25T19:43:36Z New Revision: 0944c196c58f62299540983e2d10cd7bef60691a URL: https://github.com/llvm/llvm-project/commit/0944c196c58f62299540983e2d10cd7bef60691a DIFF: https://github.com/llvm/llvm-project/commit/0944c196c58f62299540983e2d10cd7bef60691a.diff

[clang] 3595189 - [clang][dataflow] Allow clients to disable built-in transfer functions.

2022-01-26 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-26T17:24:59Z New Revision: 3595189217e684fcdaa87a78077d97f29549f560 URL: https://github.com/llvm/llvm-project/commit/3595189217e684fcdaa87a78077d97f29549f560 DIFF: https://github.com/llvm/llvm-project/commit/3595189217e684fcdaa87a78077d97f29549f560.diff

[clang] 208c25f - [clang][dataflow] Add limits to size of modeled data structures in environment.

2022-02-24 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-02-24T20:51:59Z New Revision: 208c25fcbf483b4dd61fb8b99f8422994cc5072e URL: https://github.com/llvm/llvm-project/commit/208c25fcbf483b4dd61fb8b99f8422994cc5072e DIFF: https://github.com/llvm/llvm-project/commit/208c25fcbf483b4dd61fb8b99f8422994cc5072e.diff

[clang] 7ee97c2 - [clang][dataflow] Add a lattice to track source locations.

2022-03-04 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-03-04T17:13:24Z New Revision: 7ee97c24efab4b2617da7f188760b0ad2dcc2125 URL: https://github.com/llvm/llvm-project/commit/7ee97c24efab4b2617da7f188760b0ad2dcc2125 DIFF: https://github.com/llvm/llvm-project/commit/7ee97c24efab4b2617da7f188760b0ad2dcc2125.diff

[clang] c88deef - [clang][dataflow] Add `MatchSwitch` utility library.

2022-03-04 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-03-04T17:19:51Z New Revision: c88deef0a7218dd5c30500e7d3f58fc23283d3e5 URL: https://github.com/llvm/llvm-project/commit/c88deef0a7218dd5c30500e7d3f58fc23283d3e5 DIFF: https://github.com/llvm/llvm-project/commit/c88deef0a7218dd5c30500e7d3f58fc23283d3e5.diff

[clang] 18c84e2 - [clang][dataflow] Fix nullptr dereferencing error.

2022-03-07 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-03-08T03:01:31Z New Revision: 18c84e2d325fe64f303a13b17addce1c0e6aca23 URL: https://github.com/llvm/llvm-project/commit/18c84e2d325fe64f303a13b17addce1c0e6aca23 DIFF: https://github.com/llvm/llvm-project/commit/18c84e2d325fe64f303a13b17addce1c0e6aca23.diff

[clang] 4dcc47a - [clang][dataflow] Add parameterized map lattice.

2022-01-04 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-04T14:27:15Z New Revision: 4dcc47aaeaf015c4f1315a13a41819560b9946ab URL: https://github.com/llvm/llvm-project/commit/4dcc47aaeaf015c4f1315a13a41819560b9946ab DIFF: https://github.com/llvm/llvm-project/commit/4dcc47aaeaf015c4f1315a13a41819560b9946ab.diff

[clang] 4950198 - [clang][dataflow] Add multi-variable constant propagation example.

2022-01-04 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-04T14:28:23Z New Revision: 4950198116a5b243b8e7b4267e0397e118a27c43 URL: https://github.com/llvm/llvm-project/commit/4950198116a5b243b8e7b4267e0397e118a27c43 DIFF: https://github.com/llvm/llvm-project/commit/4950198116a5b243b8e7b4267e0397e118a27c43.diff

[clang] 64f7b2d - [clang][dataflow] Change `transfer` function to update lattice element in place.

2022-01-10 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-10T14:45:30Z New Revision: 64f7b2d4bf92eeb8f753f46d2a9499688b07293a URL: https://github.com/llvm/llvm-project/commit/64f7b2d4bf92eeb8f753f46d2a9499688b07293a DIFF: https://github.com/llvm/llvm-project/commit/64f7b2d4bf92eeb8f753f46d2a9499688b07293a.diff

[clang] 875117a - [clang][dataflow] Remove TestingSupport's dependency on gtest

2022-01-17 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2022-01-17T15:33:23Z New Revision: 875117ae7a21f0282e09a72addaf41dfd033cc55 URL: https://github.com/llvm/llvm-project/commit/875117ae7a21f0282e09a72addaf41dfd033cc55 DIFF: https://github.com/llvm/llvm-project/commit/875117ae7a21f0282e09a72addaf41dfd033cc55.diff

[clang-tools-extra] a1968d5 - Prevent abseil-cleanup-ctad check from stomping on surrounding context

2021-12-09 Thread Yitzhak Mandelbaum via cfe-commits
Author: CJ Johnson Date: 2021-12-09T17:41:12Z New Revision: a1968d5341d7b1ec7889955f230d0375548d165b URL: https://github.com/llvm/llvm-project/commit/a1968d5341d7b1ec7889955f230d0375548d165b DIFF: https://github.com/llvm/llvm-project/commit/a1968d5341d7b1ec7889955f230d0375548d165b.diff LOG: Pr

[clang] 77e9d36 - [clang][dataflow] Fix build breakage from commit 8dcaf3aa0bf25508700a7452ed963c1487221dfd

2021-12-10 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-10T12:55:48Z New Revision: 77e9d36a785ab12f3840c522fd357575929df92c URL: https://github.com/llvm/llvm-project/commit/77e9d36a785ab12f3840c522fd357575929df92c DIFF: https://github.com/llvm/llvm-project/commit/77e9d36a785ab12f3840c522fd357575929df92c.diff

[clang] 47d526d - [clang][dataflow] Add framework for testing analyses.

2021-12-10 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-10T14:00:36Z New Revision: 47d526d67e3cc66771eed1d0b607226a4fb9a5b5 URL: https://github.com/llvm/llvm-project/commit/47d526d67e3cc66771eed1d0b607226a4fb9a5b5 DIFF: https://github.com/llvm/llvm-project/commit/47d526d67e3cc66771eed1d0b607226a4fb9a5b5.diff

[clang] 28d3976 - Revert "[clang][dataflow] Add framework for testing analyses."

2021-12-10 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-10T14:27:15Z New Revision: 28d3976819c9d0921c6118c3f8fee9297380ddae URL: https://github.com/llvm/llvm-project/commit/28d3976819c9d0921c6118c3f8fee9297380ddae DIFF: https://github.com/llvm/llvm-project/commit/28d3976819c9d0921c6118c3f8fee9297380ddae.diff

[clang] 5a40df6 - [clang][dataflow] Add framework for testing analyses.

2021-12-10 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-10T15:24:12Z New Revision: 5a40df6381819b38df66e4b6eaa02e7140e07a0c URL: https://github.com/llvm/llvm-project/commit/5a40df6381819b38df66e4b6eaa02e7140e07a0c DIFF: https://github.com/llvm/llvm-project/commit/5a40df6381819b38df66e4b6eaa02e7140e07a0c.diff

Re: [PATCH] D108560: [clang-tidy] Add support for `NOLINTBEGIN` ... `NOLINTEND` comments

2021-12-10 Thread Yitzhak Mandelbaum via cfe-commits
Sounds good to me. Thanks for pushing on this! On Wed, Dec 8, 2021 at 4:47 AM Salman Javed via Phabricator < revi...@reviews.llvm.org> wrote: > salman-javed-nz added a comment. > > Hi, just giving a progress update. This is just a early heads-up - no > action needed from you at this stage. > > I

[clang] 93fbaa4 - Revert "Revert "[clang][dataflow] Add framework for testing analyses.""

2021-12-11 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-11T23:16:59Z New Revision: 93fbaa46c82abd2d54bce9a7c3b39b01c30220d6 URL: https://github.com/llvm/llvm-project/commit/93fbaa46c82abd2d54bce9a7c3b39b01c30220d6 DIFF: https://github.com/llvm/llvm-project/commit/93fbaa46c82abd2d54bce9a7c3b39b01c30220d6.diff

[clang] 8179e1f - [clang][dataflow] Add simplistic constant-propagation analysis.

2021-12-15 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-15T19:30:20Z New Revision: 8179e1fd519deccfb3b940468af46676164d6d75 URL: https://github.com/llvm/llvm-project/commit/8179e1fd519deccfb3b940468af46676164d6d75 DIFF: https://github.com/llvm/llvm-project/commit/8179e1fd519deccfb3b940468af46676164d6d75.diff

[clang] 8561e15 - [clang][dataflow] Fix unused-variable warning.

2021-12-16 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-12-16T13:37:17Z New Revision: 8561e15c5befd84542637493a76c8f2de25d08b9 URL: https://github.com/llvm/llvm-project/commit/8561e15c5befd84542637493a76c8f2de25d08b9 DIFF: https://github.com/llvm/llvm-project/commit/8561e15c5befd84542637493a76c8f2de25d08b9.diff

[clang-tools-extra] 9eb2284 - [clang-tidy] Update uses of deprecated Transformer APIs in StringFindStrContainsCheck.

2021-01-05 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-01-05T16:49:29Z New Revision: 9eb2284f60391eca246f12398d247fc1555d6bf5 URL: https://github.com/llvm/llvm-project/commit/9eb2284f60391eca246f12398d247fc1555d6bf5 DIFF: https://github.com/llvm/llvm-project/commit/9eb2284f60391eca246f12398d247fc1555d6bf5.diff

[clang] 675a297 - [libTooling] Add support for smart pointers to relevant Transformer `Stencil`s.

2021-01-05 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-01-05T17:57:41Z New Revision: 675a2973ee7745d1859e3b72be40a803dd349e55 URL: https://github.com/llvm/llvm-project/commit/675a2973ee7745d1859e3b72be40a803dd349e55 DIFF: https://github.com/llvm/llvm-project/commit/675a2973ee7745d1859e3b72be40a803dd349e55.diff

[clang-tools-extra] 922a5b8 - [clang-tidy] Add test for Transformer-based checks with diagnostics.

2021-01-12 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-01-12T20:15:22Z New Revision: 922a5b894114defb5302e514973de8c9cd23af6a URL: https://github.com/llvm/llvm-project/commit/922a5b894114defb5302e514973de8c9cd23af6a DIFF: https://github.com/llvm/llvm-project/commit/922a5b894114defb5302e514973de8c9cd23af6a.diff

[clang] 1fabe6e - [libTooling] Change `addInclude` to use expansion locs.

2021-01-14 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-01-15T03:08:56Z New Revision: 1fabe6e51917bcd7a1242294069c682fe6dffa45 URL: https://github.com/llvm/llvm-project/commit/1fabe6e51917bcd7a1242294069c682fe6dffa45 DIFF: https://github.com/llvm/llvm-project/commit/1fabe6e51917bcd7a1242294069c682fe6dffa45.diff

[clang] ac74296 - Add `TypeLoc`-related matchers.

2021-10-08 Thread Yitzhak Mandelbaum via cfe-commits
Author: James King Date: 2021-10-08T17:42:18Z New Revision: ac742965628631059af7fdc77e8661fa660ac180 URL: https://github.com/llvm/llvm-project/commit/ac742965628631059af7fdc77e8661fa660ac180 DIFF: https://github.com/llvm/llvm-project/commit/ac742965628631059af7fdc77e8661fa660ac180.diff LOG: Ad

[clang] 3ab238a - [AST Matchers] Update dump_ast_matchers.py to query only class index page.

2021-10-08 Thread Yitzhak Mandelbaum via cfe-commits
Author: James King Date: 2021-10-08T17:45:10Z New Revision: 3ab238af4fa44a12ff3d479dc7fac50332ad2875 URL: https://github.com/llvm/llvm-project/commit/3ab238af4fa44a12ff3d479dc7fac50332ad2875 DIFF: https://github.com/llvm/llvm-project/commit/3ab238af4fa44a12ff3d479dc7fac50332ad2875.diff LOG: [A

[clang] 25fabc4 - Add release note about `TypeLoc` matchers.

2021-10-11 Thread Yitzhak Mandelbaum via cfe-commits
Author: James King Date: 2021-10-11T19:57:32Z New Revision: 25fabc434ad5d1d7edd994b1fafb87e70ee2cda1 URL: https://github.com/llvm/llvm-project/commit/25fabc434ad5d1d7edd994b1fafb87e70ee2cda1 DIFF: https://github.com/llvm/llvm-project/commit/25fabc434ad5d1d7edd994b1fafb87e70ee2cda1.diff LOG: Ad

[clang] b6c218d - [libTooling] Add "switch"-like Stencil combinator

2021-10-14 Thread Yitzhak Mandelbaum via cfe-commits
Author: Yitzhak Mandelbaum Date: 2021-10-14T16:45:37Z New Revision: b6c218d4fdb74c0ee467e078721438c3396dc599 URL: https://github.com/llvm/llvm-project/commit/b6c218d4fdb74c0ee467e078721438c3396dc599 DIFF: https://github.com/llvm/llvm-project/commit/b6c218d4fdb74c0ee467e078721438c3396dc599.diff

<    1   2   3   4   5   6   7   >