mboehme marked 2 inline comments as done.
mboehme added inline comments.

================
Comment at: 
clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp:789
-      // of these accessors.
-      .CaseOfCFGStmt<CallExpr>(valueOperatorCall(std::nullopt),
                                [](const CallExpr *E,
----------------
ymandel wrote:
> mboehme wrote:
> > ymandel wrote:
> > > this function will be left with only one caller. Maybe inline it? For 
> > > that matter, should the other caller be changed in some parallel way?
> > > this function will be left with only one caller. Maybe inline it?
> > 
> > The general style in this file seems to be to pull matcher expressions out 
> > into helper functions, even if they're only used in one place. FWIW, I'm 
> > personally not convinced this is helpful because you _want_ to be able to 
> > see exactly what a `CaseOfCFGStmt` is matching on, so inlining makes sense 
> > IMO. But I'm not sure I want to be inconsistent with the general style of 
> > this file -- it would make more sense to do a general cleanup. WDYT?
> > 
> > > For that matter, should the other caller be changed in some parallel way?
> > 
> > No, that caller (`buildDiagnoseMatchSwitch()`) does not have the same 
> > problem because it looks only at the `optional`, not at the value that is 
> > contained in it (see also [D150756](https://reviews.llvm.org/D150756), 
> > which makes this explicit), and the distinction between `operator*` and 
> > `operator->` (for our purposes) is only in the way they return the 
> > contained value.
> regarding the matcher -- it's a judgment call; I agree that having to jump 
> back and forth to read this case "statement" is problematic, but some of the 
> matchers are kind of complicated, so a name can be a service to the reader. 
> This one looked sufficiently simple to consider just inlining it, but I'm 
> also fine leaving as is.
In that case, I think I'll leave this as-is for the time being and will revisit 
the question of inlining more generally.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D150775/new/

https://reviews.llvm.org/D150775

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to