Open
Description
The C/C++ extension wants to be able to send back references of different types that users can determine what "type" of reference it is and filter out unwanted types -- in order to provide functionality equivalent to Visual Studio 2019. The types are
- Confirmed reference (i.e. passes semantic checking): reference icon
- Not a reference (i.e. has the same name, but fails semantic checking): cancel icon
- Reference in a comment: comment icon
- Reference in a string: string icon
- Reference in an inactive (preprocessor) region: ? icon (or a better one, since it conflicts with 7)
- Possible reference (Confirmation in progress): progress icon?
- Possible reference (Confirmation canceled): ? icon (or a better one, since it conflicts with 5 and 7) -- this "type" doesn't exist in VS, but it seems like it should (at least for us).
- Cannot confirm reference (due to some bug or "by design" limitation): ? icon
This is the screenshot from VS:
Our current "workaround" is to only send back Confirmed References (number 1), although we also plan to have some progress UI with a button that allows users to view the Confirmation in progress (number 6 items, merged in with number 1 items). We're currently implementing this for June: microsoft/vscode-cpptools#15 .
The relevant LSP that would need to be changed is at
https://microsoft.github.io/language-server-protocol/specification#textDocument_references