Currently clangd’s call hierarchy and reference don’t include destructors, making the analysis incomplete, for example: #157876
While there is no actual position for destructor, I think it is reasonable to be at the same location of the corresponding constructor because it is decided there. I am new to clang AST but I think the information can be infered from it. Just found #166110. Currently I am looking into clang-tools-extra/clangd/index/SymbolCollector.cpp, not sure whether in the right direction.
But I am also unsure whether adding destructor will break existing rules. Need help.