Open mehlian opened 1 month ago
Bug Summary: When aliasing is used for struct that uses same name as namespace then IntelliSense shows error.
Steps to reproduce:
Paste in code:
namespace AAA { struct AAA { int integer; }; int AAAtest(int a) { return a + 10; } }
namespace BBB { using AAA = AAA::AAA; // shows error
void test(AAA *aa) { aa->integer++; int result = ::AAA::AAAtest(10); } }
2. Error `overloaded function "AAA::AAA::AAA" is not a type nameC/C++(757)` will be shown on mouse hover over `using AAA = AAA::AAA; ` line. Expected behavior: No error should be shown here. Code compiles using `clang version 14.0.6 Android (8490178, based on r450784d)` (other compilers not tested). ### Configuration and Logs ```shell { "configurations": [ { "name": "android", "includePath": [ "${workspaceFolder}/src/**" ], "defines": [ "_DEBUG", "DEBUG", "UNICODE", "_UNICODE" ], "compilerPath": "${workspaceFolder}/../android_sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe", "cStandard": "c11", "cppStandard": "c++11", "intelliSenseMode": "linux-clang-arm64", "browse": { "limitSymbolsToIncludedHeaders": true }, "compilerArgs": [ "--target=aarch64-unknown-linux-android26", "-Werror", "-pedantic-errors", "--std=c++11", "-fPIC", "-ferror-limit=0", "-fstack-protector-strong", "-Wno-writable-strings", "-Wno-gnu-anonymous-struct", "-Wno-nested-anon-types", "-Wl,--no-undefined-version", "-Wl,-undefined,error", "-Wl,--error-unresolved-symbols", "-Wl,--no-undefined", "-Wl,-error-limit=0", "-Wl,--build-id=sha1", "-mno-relax" ] } ], "version": 4 }
No response
Hi @mehlian . Thanks for reporting this. Since this also repro's in VS (which shares the same IntelliSense implementation), I opened an issue against VS internally. (ID 2255630)
Environment
Bug Summary and Steps to Reproduce
Bug Summary: When aliasing is used for struct that uses same name as namespace then IntelliSense shows error.
Steps to reproduce:
Paste in code:
namespace BBB { using AAA = AAA::AAA; // shows error
void test(AAA *aa) { aa->integer++; int result = ::AAA::AAAtest(10); } }
Other Extensions
No response
Additional context
No response