You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
The IntelliSense process may crash if two template constexpr functions have the same name #13775
template <typename T>
constexprvoidfunc()
{
int i1 = 5;
int b;
}
template <typename T>
constexprvoidfunc()
{
// <-- Type i
}
Type i where indicted.
Bug: The IntelliSense process crashes. Other repros are possible that don't require edits and other crashes may happen when putting the cursor on an identifier (reference highlighting).
I originally reproed it on Mac with the clang 17 preprocessed system headers but without the proper defines set, which causes two system library functions with different overloads to be treated as "the same" due to one of the differentiating arguments being an "error type" (e.g. __find_end).
This repros with 1.26.3, but 1.27.0 might repro it with additional code samples/edits too.
There were 3 different crash scenarios, the could repro when }} was added before system headers on Mac due to that causing certain definitions to be skipped resulting in IntelliSense incorrectly parsing function as duplicates.
Activity
sean-mcmanus commentedon Jul 30, 2025
There were 3 different crash scenarios, the could repro when
}}was added before system headers on Mac due to that causing certain definitions to be skipped resulting in IntelliSense incorrectly parsing function as duplicates.