<div dir="ltr">What do we think about bundling overloaded functions into one completion item, vs clangd's current behavior of providing each overload of a function as a separate completion item?<div><br></div><div>Off the top of my head, bundling pros:</div><div> - less noise</div><div> - present more diverse results</div><div>Bundling cons:</div><div> - lose the signature</div><div> - complicated interactions with e.g. include insertion</div><div><br></div><div>My own feeling is that bundling is a win on balance if the editor has good signature help support. This might be personal enough to make an option.</div><div><br></div><div>I built a hacky prototype if you want to play with this behavior: patch in <a href="https://reviews.llvm.org/D47957">https://reviews.llvm.org/D47957</a>.</div><div>Screenshot: <a href="https://i.imgur.com/vh25i20.png">https://i.imgur.com/vh25i20.png</a></div><div><br></div><div>The behavior is to bundle together c++ method calls by name, and function calls by qualified name (namespaces must match). I don't know much about ObjC, I'm not sure if grouping on the first chunk of the selector would make sense.</div><div><br></div><div>Cool things you could do:</div><div> - pull individual elements out of the bundle if they're high ranking enough</div><div> - explode the bundle once the query is unambiguous (client-side filtering is a problem here)</div><div> - attempt to summarize similar signatures (e.g. show return type if it's the same for all overloads, show similar parts of const/non-const member overloads)</div><div><br></div></div>