[PATCH] D158766: [AST] TypeSourceInfo for params of inherited constructor should be null

2023-08-24 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added inline comments. This revision is now accepted and ready to land. Comment at: clang/lib/Sema/SemaDeclCXX.cpp:13895-13896 Context.getTrivialTypeSourceInfo(BaseCtor->getType(), UsingLoc); FunctionProtoTypeLoc ProtoLoc =

[PATCH] D158771: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly.

2023-08-24 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added reviewers: sammccall, li.zhe.hua. Herald added a project: All. ymandel requested review of this revision. Herald added a project: clang. Previously, where `name` was applied to a template-specialization TypeLoc, it returned the entire specialization (na

[PATCH] D158771: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553455. ymandel marked 2 inline comments as done. ymandel added a comment. address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158771/new/ https://reviews.llvm.org/D158771 Files: clang/lib/Tooling

[PATCH] D158771: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553456. ymandel added a comment. clang-format Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158771/new/ https://reviews.llvm.org/D158771 Files: clang/lib/Tooling/Transformer/RangeSelector.cpp clang/unittes

[PATCH] D158771: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553471. ymandel added a comment. tweak Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158771/new/ https://reviews.llvm.org/D158771 Files: clang/lib/Tooling/Transformer/RangeSelector.cpp clang/unittests/Tool

[PATCH] D158771: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGc78325815062: [clang][tooling] Fix `name` range-selector to handle TypeLocs correctly. (authored by ymandel). Repository: rG LLVM Github Monorepo

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added reviewers: mboehme, xazax.hun. Herald added a subscriber: martong. Herald added a reviewer: NoQ. Herald added a project: All. ymandel requested review of this revision. Herald added a project: clang. Adds support for recognizing range-for loops in the m

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553505. ymandel added a comment. fix test Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158848/new/ https://reviews.llvm.org/D158848 Files: clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp c

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553929. ymandel marked 2 inline comments as done. ymandel added a comment. address review comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158848/new/ https://reviews.llvm.org/D158848 Files: clang/lib/

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added inline comments. Comment at: clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp:1631 + const AnalysisOutputs &) { +EXPECT_THAT(Results.keys(), UnorderedElementsAre("after_loop")); + }); mboehme wrote: > I

[PATCH] D158981: [clang][dataflow][NFC] Eliminate `getStorageLocation()` / `setStorageLocation()` in `DataflowAnalysisContext`.

2023-08-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. This revision is now accepted and ready to land. I love this! (specifically, that it simplifies the API surface) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158981/new/ https://reviews.llvm

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 553958. ymandel added a comment. clang-format Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158848/new/ https://reviews.llvm.org/D158848 Files: clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp

[PATCH] D158848: [clang][dataflow] Support range-for loops in fixpoint algorithm.

2023-08-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG824b13659130: [clang][dataflow] Support range-for loops in fixpoint algorithm. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158848/ne

[PATCH] D159261: [clang][dataflow] Eliminate deprecated `DataflowAnalysis` constructor.

2023-08-31 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. This revision is now accepted and ready to land. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159261/new/ https://reviews.llvm.org/D159261 __

[PATCH] D159355: [clang][dataflow] Unsoundly treat "Unknown" as "Equivalent" in widening.

2023-09-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added reviewers: xazax.hun, gribozavr2, mboehme. Herald added a subscriber: martong. Herald added a reviewer: NoQ. Herald added a project: All. ymandel requested review of this revision. Herald added a project: clang. This change makes widening act the same a

[PATCH] D159355: [clang][dataflow] Unsoundly treat "Unknown" as "Equivalent" in widening.

2023-09-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 556051. ymandel added a comment. fix typo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159355/new/ https://reviews.llvm.org/D159355 Files: clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp clang/un

[PATCH] D159355: [clang][dataflow] Unsoundly treat "Unknown" as "Equivalent" in widening.

2023-09-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked an inline comment as done. ymandel added inline comments. Comment at: clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp:53 +// +// FIXME: this function is a hook that enable unsoundness in support of +// convergence. Once we have widening support for the ref

[PATCH] D159355: [clang][dataflow] Unsoundly treat "Unknown" as "Equivalent" in widening.

2023-09-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked an inline comment as done. ymandel added a comment. Gabor -- do you want a chance to review (given that it's a non-trivial change to the infrastructure)? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D159355/new/ https://reviews.llvm

[PATCH] D159355: [clang][dataflow] Unsoundly treat "Unknown" as "Equivalent" in widening.

2023-09-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D159355#4640054 , @xazax.hun wrote: > Sorry for the late review. This looks good to me, but I hope we will be able > to undo it soon :) Thanks! Np, and agreed. I think we have a clear path towards dropping the unsoundness al

[PATCH] D137948: [clang][dataflow] Add widening API and implement it for built-in boolean model.

2022-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Does anyone else on this review thread want to review? Gabor's accepted the revision so, if not, I'll go ahead and commit. thx Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137948/new/ https://reviews.llvm.org/D137948 ___

[PATCH] D137948: [clang][dataflow] Add widening API and implement it for built-in boolean model.

2022-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 477200. ymandel added a comment. address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137948/new/ https://reviews.llvm.org/D137948 Files: clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis

[PATCH] D137948: [clang][dataflow] Add widening API and implement it for built-in boolean model.

2022-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. ymandel marked 2 inline comments as done. Closed by commit rG84dd12b29064: [clang][dataflow] Add widening API and implement it for built-in boolean model. (authored by

[PATCH] D76054: [clang-apply-replacements] No longer deduplucates replacements from the same TU

2020-03-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Thanks for expanding the description, including the helpful example. I'm not sure, though, that this is the "right" behavior, at least not always. Worse, I'm not sure there is a single "right" behavior. I can easily imagine a tidy that matches multiple times in the sam

[PATCH] D76054: [clang-apply-replacements] No longer deduplucates replacements from the same TU

2020-03-23 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. This revision is now accepted and ready to land. Thanks for the example and, generally, explanation. Just a few small comments. Comment at: clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp:148

[PATCH] D74840: [AST matchers] Add basic matchers for googletest EXPECT/ASSERT calls.

2020-02-19 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr2. Herald added a subscriber: mgorny. Herald added a project: clang. This revision adds matchers that match calls to the gtest EXPECT and ASSERT macros almost like function calls. The matchers are placed in separate files (GtestMatc

[PATCH] D74840: [AST matchers] Add basic matchers for googletest EXPECT/ASSERT calls.

2020-02-21 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG23444edf30ba: [AST matchers] Add basic matchers for googletest EXPECT/ASSERT calls. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D7484

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 246556. ymandel marked 8 inline comments as done. ymandel added a comment. Responded to all comments. No functional changes. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72153/new/ https://reviews.llvm.org/D72

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Thanks for the detailed review, especially given the complexity of the code! Comment at: clang/lib/Tooling/Transformer/SourceCode.cpp:152 +// will not break anything that removing the entity wouldn't have +// already broken. + bool TerminatedBy

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-25 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG9c54f6154f74: [libTooling] Add function to determine associated text of a declaration. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D7

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-26 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel reopened this revision. ymandel added a comment. This revision is now accepted and ready to land. Reopening for fix to failing tests that resulted in revert. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72153/new/ https://reviews.llvm.org/

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-26 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 246706. ymandel added a comment. Fix failing test under msvc compatibility. Adds -fno-delayed-template-parsing to compilation arguments in tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72153/new/ https:

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-02-26 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG38b4516de8a4: [libTooling] Add function to determine associated text of a declaration. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D7

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 247299. ymandel added a comment. removed change to unrelated file. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75365/new/ https://reviews.llvm.org/D75365 Files: clang/lib/ASTMatchers/ASTMatchersInternal.cp

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added reviewers: aaron.ballman, sbenza. Herald added a project: clang. ymandel updated this revision to Diff 247299. ymandel added a comment. removed change to unrelated file. The implementation of 'optionally' doesn't preserve bindings when none of the su

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Aaron -- when fixing this bug, I had some other questions about the behavior of this matcher. Specifically, instead of adding bindings to the existing map, it creates a new match result for each matching node (with addMatch). But, I'm struggling to see how it makes sen

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D75365#1898536 , @aaron.ballman wrote: > ... > Good question! My intuition is that `optionally` should take exactly one > argument and the user should be explicit as to whether they mean `allOf` or > `anyOf` when there is

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG586f13aeac3f: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings… (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-02-28 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 247314. ymandel added a comment. fix formatting. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75365/new/ https://reviews.llvm.org/D75365 Files: clang/lib/ASTMatchers/ASTMatchersInternal.cpp clang/unittest

[PATCH] D75365: [AST Matchers] Fix bug in 'optionally' matcher wherein all previous bindings are cleared when all inner matchers fail.

2020-03-02 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D75365#1900784 , @gribozavr2 wrote: > +1 to this fix. > > However, regarding `allOf` vs. `anyOf` semantics, since `optionally` always > succeeds, is there a difference between the two semantics? > > It seems to me that there sh

[PATCH] D75556: [AST Matchers] Restrict `optionally` matcher to a single argument.

2020-03-03 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added reviewers: sbenza, aaron.ballman. Herald added a project: clang. Currently, `optionally` can take multiple arguments, which commits it to a particular strategy for those arguments (in this case, "for each"). We limit the matcher to a single argument, wh

[PATCH] D75556: [AST Matchers] Restrict `optionally` matcher to a single argument.

2020-03-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 248171. ymandel added a comment. Updated the matcher HTML doc. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75556/new/ https://reviews.llvm.org/D75556 Files: clang/docs/LibASTMatchersReference.html clang/

[PATCH] D75556: [AST Matchers] Restrict `optionally` matcher to a single argument.

2020-03-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 248170. ymandel added a comment. Updated comments for matcher. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75556/new/ https://reviews.llvm.org/D75556 Files: clang/include/clang/ASTMatchers/ASTMatchers.h

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. Currently, stencils are defined as a sequence of `StencilParts`. This differentiation adds an unneeded layer of complexity to the definition of Stencils. This change significantly simplifies the type

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227072. ymandel added a comment. commented sequence operator Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://reviews.llvm.org/D69613 Files: clang/include/clang/Tooling/Transformer/Stencil.h

[PATCH] D69625: [libTooling] Support implicit coercions in Stencil's `access` combinator.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. ymandel added a parent revision: D69613: [libTooling] Simplify type structure of `Stencil`s.. Changes `clang::transformer::access` to also support `RangeSelector` as the second argument. This chang

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227156. ymandel added a comment. added simple overload of `cat` -- needed to support client transition to new type structure. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://reviews.llvm.org/D

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227159. ymandel added a comment. rebasing onto parent Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://reviews.llvm.org/D69613 Files: clang/include/clang/Tooling/Transformer/Stencil.h clang

[PATCH] D69632: [libTooling] Add Stencil constructor.

2019-10-30 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. ymandel added a child revision: D69613: [libTooling] Simplify type structure of `Stencil`s.. Adds a constructor that takes a vector with which to initialize the `Parts` field and a corresponding fre

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-31 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked 5 inline comments as done. ymandel added a comment. Thanks for the review! I agreed w/ all the comments, just responding early w/ those I had further thoughts/questions on. Comment at: clang/include/clang/Tooling/Transformer/Stencil.h:82 +Stencil makeStencil(Ran

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-10-31 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked 8 inline comments as done. ymandel added inline comments. Comment at: clang/include/clang/Tooling/Transformer/Stencil.h:154 +/// for more details. +template MatchConsumer stencil(Ts &&... Parts) { + Stencil S = cat(std::forward(Parts)...); griboz

[PATCH] D69625: [libTooling] Support implicit coercions in Stencil's `access` combinator.

2019-10-31 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D69625#1729634 , @gribozavr2 wrote: > I fully agree about passing a Stencil to `access`. However whether to call > `makeStencil` inside is an interesting question. On one hand, such implicit > conversions increase the convenie

[PATCH] D69632: [libTooling] Add Stencil constructor.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227457. ymandel added a comment. renamed free function to avoid overloading a templated function. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69632/new/ https://reviews.llvm.org/D69632 Files: clang/include

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked an inline comment as done. ymandel added a comment. In D69613#1729703 , @gribozavr2 wrote: > I see. Some decoupling is desirable, I agree. Maybe move `StencilInterface` > and `Stencil` into a separate header that `RewriteRule` can depend on

[PATCH] D69625: [libTooling] Support implicit coercions in Stencil's `access` combinator.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D69625#1729702 , @gribozavr2 wrote: > > Which idiom do you think we should encourage, then, for text and > > range-selectors -- the named combinator or the single-argument cat? That is > > You are making a very interesting poin

[PATCH] D69632: [libTooling] Add Stencil constructor.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG6e759daf2ea8: [libTooling] Add Stencil constructor. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69632/new/ https://reviews.llvm.org

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227473. ymandel added a comment. addressed to comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://reviews.llvm.org/D69613 Files: clang/include/clang/Tooling/Transformer/Stencil.h clan

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked 12 inline comments as done. ymandel added a comment. In D69613#1730238 , @ymandel wrote: > In D69613#1729703 , @gribozavr2 > wrote: > > > I see. Some decoupling is desirable, I agree. Maybe move `Ste

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227478. ymandel marked an inline comment as done. ymandel added a comment. remove stray comments; clang-format Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://reviews.llvm.org/D69613 Files:

[PATCH] D69184: [libTooling] Introduce general combinator for fixed-value `MatchConsumer`s.

2019-11-01 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D69184#1730523 , @gribozavr2 wrote: > > In fact, it might be a good idea to rename `change` to `changeTo` (WDYT?). > > I like it. It should combine well with all stencils, not just `text`. Agreed. Will do. > > >> An alterna

[PATCH] D69802: [libTooling] Further simplify `Stencil` type and introduce `MatchComputation`.

2019-11-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. ymandel added a parent revision: D69613: [libTooling] Simplify type structure of `Stencil`s.. This revision introduces a new interface `MatchComputation` which generalizes the `Stencil` interface an

[PATCH] D69802: [libTooling] Further simplify `Stencil` type and introduce `MatchComputation`.

2019-11-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 227702. ymandel added a comment. tweak. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69802/new/ https://reviews.llvm.org/D69802 Files: clang/include/clang/Tooling/Transformer/MatchConsumer.h clang/include

[PATCH] D69804: [clang-tidy] Update TransformerClangTidyCheck to use new Transformer bindings.

2019-11-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a subscriber: xazax.hun. Herald added a project: clang. ymandel added a child revision: D69613: [libTooling] Simplify type structure of `Stencil`s.. Updates the relevant source files to use bindings in `clang::transf

[PATCH] D69804: [clang-tidy] Update TransformerClangTidyCheck to use new Transformer bindings.

2019-11-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGbde32933027a: [clang-tidy] Update TransformerClangTidyCheck to use new Transformer bindings. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.

[PATCH] D69613: [libTooling] Simplify type structure of `Stencil`s.

2019-11-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGce2b5cb6decb: [libTooling] Simplify type structure of `Stencil`s. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69613/new/ https://re

[PATCH] D69896: [libTooling] Small changes in Transformer API.

2019-11-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: ilya-biryukov. Herald added a project: clang. - Rename `transformer::change` to `transformer::changeTo`, make `change` forward to `changeTo` and mark it deprecated. - Mark `transformer::text` and `transformer::selection` deprecated and mig

[PATCH] D69896: [libTooling] Small changes in Transformer API.

2019-11-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG9f97480cddd7: [libTooling] Small changes in Transformer API. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69896/new/ https://reviews

[PATCH] D69896: [libTooling] Small changes in Transformer API.

2019-11-06 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Build breakage fixed in commit "6c683aa8d7d [libTooling] Fix breakage from change #84922" Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69896/new/ htt

[PATCH] D69625: [libTooling] Support implicit coercions in Stencil's `access` combinator.

2019-11-07 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. In D69625#1730324 , @gribozavr2 wrote: > > Are you suggesting we remove text and selection entirely? > > Yes! Sounds good. I'll do that in a separate patch. I think we can abandon this one. Repository: rG LLVM Github Monorepo

[PATCH] D69802: [libTooling] Further simplify `Stencil` type and introduce `MatchComputation`.

2019-11-11 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 228720. ymandel added a comment. syntax fixes (to compile) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69802/new/ https://reviews.llvm.org/D69802 Files: clang-tools-extra/clang-tidy/utils/TransformerClangT

[PATCH] D69802: [libTooling] Further simplify `Stencil` type and introduce `MatchComputation`.

2019-11-11 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG489449c28aaa: [libTooling] Further simplify `Stencil` type and introduce `MatchComputation`. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.

[PATCH] D70175: [libTooling] Extend `buildASTFromCodeWithArgs` to take files argument.

2019-11-13 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. Adds an optional parameter to `buildASTFromCodeWithArgs` that allows the user to pass additional files that the main code needs to compile. This change makes `buildASTFromCodeWithArgs` consistent wit

[PATCH] D70175: [libTooling] Extend `buildASTFromCodeWithArgs` to take files argument.

2019-11-19 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. gentle ping... Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70175/new/ https://reviews.llvm.org/D70175 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.ll

[PATCH] D70175: [libTooling] Extend `buildASTFromCodeWithArgs` to take files argument.

2019-11-19 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGdd471dbe99a7: [libTooling] Extend `buildASTFromCodeWithArgs` to take files argument. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D701

[PATCH] D70554: [libTooling] Add stencil combinators for nodes that may be pointers or values.

2019-11-21 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. Adds combinators `asValue` and `asPointer` to provide a uniform way to handle nodes which may be bound to either a pointer or a value (most often in the context of member expressions). Such polymorph

[PATCH] D70554: [libTooling] Add stencil combinators for nodes that may be pointers or values.

2019-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked 5 inline comments as done. ymandel added a comment. Thanks for the review! Comment at: clang/include/clang/Tooling/Transformer/Stencil.h:96 +// Constructs an expression that idiomatically represents a value, taking into +// account whether `ExprId` is a pointer o

[PATCH] D70554: [libTooling] Add stencil combinators for nodes that may be pointers or values.

2019-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 230647. ymandel added a comment. fix typo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70554/new/ https://reviews.llvm.org/D70554 Files: clang/include/clang/Tooling/Transformer/Stencil.h clang/lib/Tooling

[PATCH] D70554: [libTooling] Add stencil combinators for nodes that may be pointers or values.

2019-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 230646. ymandel added a comment. renamed combinators; reordered cases to pair x and maybeX. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70554/new/ https://reviews.llvm.org/D70554 Files: clang/include/clang

[PATCH] D70554: [libTooling] Add stencil combinators for nodes that may be pointers or values.

2019-11-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. ymandel marked an inline comment as done. Closed by commit rG01e8dd2e7a85: [libTooling] Add stencil combinators for nodes that may be pointers or values. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D75556: [AST Matchers] Restrict `optionally` matcher to a single argument.

2020-03-05 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGc359f9537ffb: [AST Matchers] Restrict `optionally` matcher to a single argument. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75556/n

[PATCH] D76054: [clang-apply-replacements] No longer deduplucates replacements from the same TU

2020-03-18 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Can you please expand on the description? Specifically, can you clarify what you've *changed* in this patch? I gather that previously, it distinguished between two different sources of replacements: diagnostics and otherwise, and only deduplicated the ones from diagnost

[PATCH] D73965: [clang] Add matcher to identify macro expansions.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. This revision adds a matcher `isExpandedFromMacro` that determines whether a statement is (transitively) expanded from a given macro. Repository: rG LLVM Github Monorepo https://reviews.llvm.org

[PATCH] D73965: [clang] Add matcher to identify macro expansions.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 242335. ymandel added a comment. Fix to get it to link correctly. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73965/new/ https://reviews.llvm.org/D73965 Files: clang/include/clang/ASTMatchers/ASTMatchers.h

[PATCH] D73965: [clang] Add matcher to identify macro expansions.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG386fd2c170a7: [clang] Add matcher to identify macro expansions. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73965/new/ https://revi

[PATCH] D73965: [clang] Add matcher to identify macro expansions.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added a comment. Aaron -- I missed your comments before submitting. I'll send a follow up with fixes. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73965/new/ https://reviews.llvm.org/D73965 _

[PATCH] D73975: [clang][NFC] Expand some `auto`s and add another test for matcher `isExpandedFromMacro`.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: aaron.ballman. Herald added a project: clang. Spells out some `auto`s explicitly and adds another test for the matcher `isExpandedFromMacro`. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D73975 Files: clang/include/c

[PATCH] D73975: [clang][NFC] Expand some `auto`s and add another test for matcher `isExpandedFromMacro`.

2020-02-04 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGe5ff92e049b5: [clang][NFC] Expand some `auto`s and add another test for matcher… (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73975/n

[PATCH] D74214: [clang-tidy] Fix PR#34798 'readability-braces-around-statements breaks statements containing braces.'

2020-02-11 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added inline comments. Comment at: clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp:21 -tok::TokenKind getTokenKind(SourceLocation Loc, const SourceManager &SM, -const ASTContext *Context) { - Token Tok; +bool tryGet

[PATCH] D74214: [clang-tidy] Fix PR#34798 'readability-braces-around-statements breaks statements containing braces.'

2020-02-11 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added inline comments. Comment at: clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp:76-77 + + // We need to check that it is not 'InitListExpr' which ends with + // the tokens '};' because it will break the following analysis + tok::TokenKind

[PATCH] D74763: [libTooling] Add option for `buildAST` to report diagnostics.

2020-02-18 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel created this revision. ymandel added a reviewer: gribozavr. Herald added a project: clang. Currently, `buildAST[WithArgs]` either succeeds or fails. This patch adds support for the caller to pass a `DiagnosticConsumer` to receive all relevant diagnostics. Repository: rG LLVM Github Mo

[PATCH] D74763: [libTooling] Add option for `buildAST` to report diagnostics.

2020-02-18 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG523cae324d79: [libTooling] Add option for `buildAST` to report diagnostics. (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74763/new/

[PATCH] D72274: [libTooling] Fix bug in Stencil handling of macro ranges

2020-01-17 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked 2 inline comments as done. ymandel added a comment. In D72274#1826477 , @gribozavr2 wrote: > The only functional change that I see in this patch is in > `clang/lib/Tooling/Transformer/Stencil.cpp`. However, I don't understand how > that ch

[PATCH] D72274: [libTooling] Fix bug in Stencil handling of macro ranges

2020-01-17 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked an inline comment as done. ymandel added a comment. Thanks for the review! In D72274#1826634 , @gribozavr2 wrote: > In D72274#1826614 , @ymandel wrote: > > > In D72274#1826477

[PATCH] D72274: [libTooling] Fix bug in Stencil handling of macro ranges

2020-01-17 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGb9d2bf38e86e: [libTooling] Fix bug in Stencil handling of macro ranges (authored by ymandel). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72274/new/ https

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-01-29 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 241124. ymandel marked 4 inline comments as done. ymandel added a comment. addressed comments, with significant reworking of tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72153/new/ https://reviews.llvm.

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-01-29 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel updated this revision to Diff 241127. ymandel marked 12 inline comments as done. ymandel added a comment. tweaks Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72153/new/ https://reviews.llvm.org/D72153 Files: clang/include/clang/Tooling/

[PATCH] D72153: [libTooling] Add function to determine associated text of a declaration.

2020-01-29 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel marked an inline comment as done. ymandel added a comment. Thank you for the detailed review. I've significantly expanded and refactored the tests. I also lifted `validateEditRange` into its own function and added corresponding tests. Comment at: clang/lib/Tooling/Tra

[PATCH] D144987: [clang][dataflow] Fix missed fields in field set construction.

2023-03-20 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel added inline comments. Comment at: clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp:141 + }; + S foo(); + )cc"; gribozavr2 wrote: > Is `foo()` used for anything in this test? not that I can see. looks left over from some previo

[PATCH] D146514: [clang][dataflow] Fix crash when RHS of `&&` or `||` calls `noreturn` func.

2023-03-21 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. Nice! Thank you. Comment at: clang/lib/Analysis/FlowSensitive/Transfer.cpp:174-175 + if (RHSVal == nullptr) { +// If the RHS isn't reachable, this implies that if we end up evaluating +// this Binary

[PATCH] D146507: [clang][dataflow][NFC] Eliminate StmtToEnvMap interface.

2023-03-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. thanks! Comment at: clang/include/clang/Analysis/FlowSensitive/Transfer.h:36-40 +auto BlockIt = CFCtx.getStmtToBlock().find(&ignoreCFGOmittedNodes(S)); +assert(BlockIt != CFCtx.getStmtToBlock().end()); +const

[PATCH] D144730: [FlowSensitive] Log analysis progress for debugging purposes

2023-03-22 Thread Yitzhak Mandelbaum via Phabricator via cfe-commits
ymandel accepted this revision. ymandel added a comment. Awesome, thanks! Comment at: clang/include/clang/Analysis/FlowSensitive/Logger.h:18 + +class ControlFlowContext; +class TypeErasedDataflowAnalysis; Maybe comment on the need for these vs including the hea

<    7   8   9   10   11   12   13   14   15   >