Skip to content

Commit f990650

Browse files
authored
[analyzer][NFC] Substitute operator() with lambda in StreamChecker
1 parent 7d7e4d2 commit f990650

File tree

1 file changed

+6
-15
lines changed

1 file changed

+6
-15
lines changed

clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -407,23 +407,14 @@ class StreamChecker : public Checker<check::PreCall, eval::Call,
407407

408408
/// Generate a message for BugReporterVisitor if the stored symbol is
409409
/// marked as interesting by the actual bug report.
410-
// FIXME: Use lambda instead.
411-
struct NoteFn {
412-
const BugType *BT_ResourceLeak;
413-
SymbolRef StreamSym;
414-
std::string Message;
415-
416-
std::string operator()(PathSensitiveBugReport &BR) const {
417-
if (BR.isInteresting(StreamSym) && &BR.getBugType() == BT_ResourceLeak)
418-
return Message;
419-
420-
return "";
421-
}
422-
};
423-
424410
const NoteTag *constructNoteTag(CheckerContext &C, SymbolRef StreamSym,
425411
const std::string &Message) const {
426-
return C.getNoteTag(NoteFn{&BT_ResourceLeak, StreamSym, Message});
412+
return C.getNoteTag([this, StreamSym,
413+
Message](PathSensitiveBugReport &BR) -> std::string {
414+
if (BR.isInteresting(StreamSym) && &BR.getBugType() == &BT_ResourceLeak)
415+
return Message;
416+
return "";
417+
});
427418
}
428419

429420
const NoteTag *constructSetEofNoteTag(CheckerContext &C,

0 commit comments

Comments
 (0)