ioeric added inline comments.
================ Comment at: clangd/IncludeFixer.h:85 + // name or incomplete type in one parse, especially when code is + // copy-and-pasted without #includes. As fixes are purely dependent on index + // requests and index results at this point, we can cache fixes by index ---------------- sammccall wrote: > This seems pretty messy (the assumption that Fix depends only on the index > lookup). > It saves some code now at the expense of being magic. If we want to e.g. > insert qualifiers too, I worry it's going to (stop us || return incorrect > cached results || lead to unneccesary cache misses) depending on what we do. > > What would we need to store to calculate Fix? > Maybe a struct ResolvedSymbol with {scope, name, inserted header}? (or even > the edit to insert the header) > If it's not hugely complicated, that seems both cleaner and more extensible - > wdyt? Yeah, surely this was too hacky ;) Instead of a new struct, how about simply storing `SymbolSlab`s? We are already building symbol slabs for fuzzy find results. And there are some helpers that take only `Symbol`. WDYT? Repository: rCTE Clang Tools Extra CHANGES SINCE LAST ACTION https://reviews.llvm.org/D58239/new/ https://reviews.llvm.org/D58239 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits