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