-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Open
Labels
Milestone
Description
Environment
Version: 1.108.1 (user setup)
Commit: 585eba7c0c34fd6b30faac7c62a42050bfbc0086
Date: 2026-01-14T14:55:44.241Z
Electron: 39.2.7
ElectronBuildId: 12953945
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Windows_NT x64 10.0.26100
C/C++ extension version 1.30.1
Bug Summary and Steps to Reproduce
Bug Summary:
When a class declares a conversion function using operator auto() IntelliSense will later be confused on references to that member of that class from other classes with a using statement. The code compiles fine, but IntelliSense will report it with an error squiggle.
Steps to reproduce:
-
Use this source file
struct a { operator auto() { return char(8); } }; struct b : a { using a::operator auto; using a::operator char; };
-
See error
class "a" has no member "operator char"
Expected behavior:
I would have expected using operator a::auto to be the error, and using a::operator char; to not be flagged as an error.
Configuration and Logs
There is no _c_cpp_properties.json_ in use for this example.
-------- Diagnostics - 1/15/2026, 8:47:45 PM
Version: 1.30.1
Current Configuration:
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"intelliSenseModeIsExplicit": false,
"cStandardIsExplicit": false,
"cppStandardIsExplicit": false,
"mergeConfigurations": false,
"recursiveIncludes": {},
"recursiveIncludesReduceIsExplicit": false,
"recursiveIncludesPriorityIsExplicit": false,
"recursiveIncludesOrderIsExplicit": false,
"compilerPath": "",
"compilerPathIsExplicit": true,
"browse": {
"limitSymbolsToIncludedHeaders": true
}
}
Modified Settings:
{
"C_Cpp.autocompleteAddParentheses": true,
"C_Cpp.default.compilerPath": ""
}
Additional Tracked Settings:
{
"editorTabSize": 4,
"editorInsertSpaces": true,
"editorAutoClosingBrackets": "languageDefined",
"filesEncoding": "utf8",
"filesAssociations": {
"*.Ps1xml": "xml",
"*.H86": "hex",
"*.kwaconfig": "json",
"*.tcc": "cpp",
"*.xslt": "xsl",
"*.rstc": "ini"
},
"filesExclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/.DS_Store": true,
"**/Thumbs.db": true
},
"filesAutoSaveAfterDelay": false,
"editorInlayHintsEnabled": true,
"editorParameterHintsEnabled": true,
"searchExclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/*.code-search": true
},
"workbenchSettingsEditor": "ui"
}
cpptools version (native): 1.30.1.0
Current database path: C:\USERS\CMORRIS\APPDATA\LOCAL\TEMP\{6C345B41-3F76-4648-B7E6-2DB157100C44}\.BROWSE.VC.DB
Translation Unit Mappings:
[ C:\Users\cmorris\test.cpp - source TU]:
Translation Unit Configurations:
[ C:\Users\cmorris\test.cpp ]
Process ID: 4588
Memory Usage: 60 MB
Include paths:
Defines:
_DEBUG
UNICODE
_UNICODE
Standard Version: ms_c++17
IntelliSense Mode: windows-msvc-x64
Total Memory Usage: 60 MBOther Extensions
No response
Additional context
No response
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
No status