New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IntelliSense fails to deduce types of CRTP-based expression templates. #6183
Comments
Thanks for reporting this. Yes, our parser is shared with VS so we'll track the issue with the VS issue you filed at https://developercommunity.visualstudio.com/content/problem/1192188/intellisense-fails-to-deduce-types-of-crtp-based-e.html . |
Sadly, the VS team closed the bug without fixing. Anyway, I would like to post a minimal reproducer mostly based on https://eel.is/c++draft/temp#arg.template-example-3 template <template <class, class...> class TT, class T1, class... Rest>
void f(TT<T1, Rest...> const &) {}
template <typename T1> struct A {};
int main()
{
A<int> a;
f(a); // bogus "no instance of overloaded function 'f' matches the specified type"
} |
@PiliLatiesa The VS team did a big bulk closure of a lot of developer community bugs (they have some odd data retention policy which requires closing the bugs after some time). We haven't gotten around to refiling them yet. Users impacted could refile if they want. We've started filing new VS bugs internally instead of on the developer community site to avoid the bulk closure problem. I'm looking into whether this issue is being tracked internally or not... |
I've created a new internal bug to track this (1489992). |
The issue has been fixed upstream: DEVCOM-1192188 Any idea about when the fix will land on the extension? Thanks |
The fix was just barely committed to VS so it won't be in our 1.19 release because we are nearing release and aren't accepting major IntelliSense updates at this stage in the release cycle (the fix came with EDG's 6.6 release). Instead, it will make it into our 1.20 release. |
Type: LanguageService
Describe the bug
(Also reported as DEVCOM-1192188)
The following piece of code causes IntelliSense to display red squiggles in the identified line, albeit it is perfectly valid C++. It seems that either the EDG compiler or IntelliSense has trouble in figuring out the type of u + v.
Steps to reproduce
Expected behavior
IntelliSense to deduce the type of u + v.
Logs
The text was updated successfully, but these errors were encountered: