[PATCH] D64127: [clangd] Deduplicate clang-tidy diagnostic messages.
Haojian Wu via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 5 05:59:28 PDT 2019
hokein marked an inline comment as done.
hokein added inline comments.
================
Comment at: clang-tools-extra/clangd/Diagnostics.cpp:427
}
+ // Deduplicate clang-tidy diagnostics -- some clang-tidy checks may emit
+ // duplicated messages due to various reasons (e.g. the check doesn't handle
----------------
sammccall wrote:
> hokein wrote:
> > sammccall wrote:
> > > This sorting/partitioning seems a bit heavyweight... what about
> > >
> > > ```
> > > DenseSet<pair<Range, Message>> SeenDiagnostics;
> > > llvm::erase_if([&](const Diag &D) {
> > > return !SeenDiagnostics.try_emplace(D.Range, D.Message).second;
> > > });
> > > ```
> > This is neat. DenseSet requires a hashvalue function of the value, which we don't have, switched to use `set`
> Can we add one instead? It'd be nice to get rid of the `operator<` on range, use of `set` etc.
> I can do this is a followup if you prefer.
I'd leave it to a follow-up.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D64127/new/
https://reviews.llvm.org/D64127
More information about the cfe-commits
mailing list