benshi001 wrote:

I do not like too long lambda either. In my opinion lambda should be 
short/compact.

And I do not think the redundancy is serious, except the common part

```
  ProgramStateRef State = C.getState();
  SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol();
  if (!StreamSym)
    return;

  const CallExpr *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr());
  if (!CE)
    return;

  const StreamState *OldSS = State->get<StreamMap>(StreamSym);
  if (!OldSS)
    return;

  assertStreamStateOpened(OldSS);
```

which appears in the beginning of most `evalXX` functions. And can we replace 
this piece with a macro ?

https://github.com/llvm/llvm-project/pull/79312
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to