vscode-cpptools
vscode-cpptools copied to clipboard
Intellisense for C++: Values for enum variables/arguments prediction
Type: LanguageService
Describe the bug
- OS and Version: Windows 10 x64
- VS Code Version: 1.47.2
- C/C++ Extension Version: 0.29.0
- Other extensions you installed (and if the issue persists after disabling them): platformio
I'd like to propose improvement to how does IntelliSense operate on enums.
Currently if you have code like following and you press Ctrl+Space inside parentheses of the foo function call, IntelliSense returns huge list of unrelated items like: pre-processor derictives, integer constants, functions. See screenshot attached.
All 99% of the suggested items are not compatible with enum. They cannot be implicitly converted to enum.
Steps to reproduce
//
// Code example
//
enum SomeEnums
{
Element1,
Element2
};
int main()
{
SomeEnums SomeEnum;
SomeEnum = /* press Ctrl+Space here */
return 0;
}
Screenshots
The screenshots show the work of another IDE in this situation - the first to offer compatible options

Additional context
I've filed a feature request on VS. If they add it, we might be able to get the fix from them.
https://developercommunity.visualstudio.com/idea/1122535/intellisense-for-c-values-for-enum-variablesargume-1.html
I'm not familiar with intellisense and may bullshit. But...
In Visual Studio (and other VS based IDEs like atmel studio) it has been worked for decades.

I would appreciate better enum suggestions as well.
This feature has now been released in the latest product update released version 17.3. Please install and let us know your feedback. Please continue to provide feedback and help us be even better.
@heartacker Yeah, the fix came in too late for our pending 1.12.3 release tomorrow, but it should be available in the following 1.13.0 pre-release afterwards (maybe in a week or so).
The fix got into VS 17.3, but unfortunately there is more work on the VS Code side to start getting the updated behavior.
Why is VScode change needed? When I install any AI copilot addon they can manipulate hint list freely already.
I have cpptools v1.17.5 and it's still not working. It's really a basic function to have, more important than other niche issues.
Maybe the issue is that named enums show as unnamed