microsoft / vscode-cpptools

Official repository for the Microsoft C/C++ extension for VS Code.
Other
5.52k stars 1.55k forks source link

C++ / IntelliSense: Macro treated as invalid function call. #10459

Open 00001H opened 1 year ago

00001H commented 1 year ago

Environment

Bug Summary and Steps to Reproduce

Bug Summary: Related: https://github.com/microsoft/vscode-cpptools/issues/9293 IntelliSense treats function-like macros as function calls, and flag them in invalid contexts.

(Proposed fix: expand all macros before intellisense runs.)

Steps to reproduce:

  1. Make a new file:
    #define defop(_C_t,sym) _C_t operator sym(const _C_t & other) const{_C_t nw(*this);nw sym= other;return nw;}
    class Blah{
    public:
        int data;
        void operator +=(const Blah& other){
            data += other.data;
        }
        defop(Blah,+)
    };
    int main(){
    Blah x;
    return 0;
    }

Expected behavior:

Configuration and Logs

c_cpp_properties.json:

{
  "configurations": [
    {
      "name": "windows-gcc-x64",
      "includePath": [
        "${workspaceFolder}",
        "E:\\"
      ],
      "compilerPath": "D:\\msys64\\mingw64\\bin\\gcc.exe",
      "cStandard": "${default}",
      "cppStandard": "c++23",
      "intelliSenseMode": "windows-gcc-x64",
      "compilerArgs": [
        ""
      ]
    }
  ],
  "version": 4
}

Log diagonistics(command palette):

-------- Diagnostics - 2/3/2023, 1:26:02 PM
Version: 1.14.1
Current Configuration:
{
    "name": "windows-gcc-x64",
    "includePath": [
        "e:\\CppPlayground",
        "E:\\"
    ],
    "compilerPath": "D:\\msys64\\mingw64\\bin\\gcc.exe",
    "cStandard": "c17",
    "cppStandard": "c++23",
    "intelliSenseMode": "windows-gcc-x64",
    "compilerArgs": [
        ""
    ],
    "compilerPathIsExplicit": true,
    "cStandardIsExplicit": true,
    "cppStandardIsExplicit": true,
    "intelliSenseModeIsExplicit": true,
    "mergeConfigurations": false,
    "browse": {
        "path": [
            "${workspaceFolder}",
            "E:\\"
        ],
        "limitSymbolsToIncludedHeaders": true
    }
}
Translation Unit Mappings:
[ E:\CppPlayground\testcppp.cpp ]:
    E:\CppPlayground\cppp.hpp *
[ E:\CppPlayground\mre.cpp ]:
    E:\CppPlayground\mre.cpp
Translation Unit Configurations:
[ E:\CppPlayground\testcppp.cpp ]:
    Process ID: 6932
    Memory Usage: 214 MB
    Compiler Path: D:\msys64\mingw64\bin\gcc.exe
    Includes:
        E:\CppPlayground
        E:
        D:\msys64\mingw64\include\c++\12.2.0
        D:\msys64\mingw64\include\c++\12.2.0\x86_64-w64-mingw32
        D:\msys64\mingw64\include\c++\12.2.0\backward
        D:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\12.2.0\include
        D:\msys64\mingw64\include
        D:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\12.2.0\include-fixed
    Standard Version: c++23
    IntelliSense Mode: windows-gcc-x64
    Other Flags:
        --g++
        --gnu_version=120200
[ E:\CppPlayground\mre.cpp ]:
    Process ID: 4404
    Memory Usage: 47 MB
    Compiler Path: D:\msys64\mingw64\bin\gcc.exe
    Includes:
        E:\CppPlayground
        E:
        D:\msys64\mingw64\include\c++\12.2.0
        D:\msys64\mingw64\include\c++\12.2.0\x86_64-w64-mingw32
        D:\msys64\mingw64\include\c++\12.2.0\backward
        D:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\12.2.0\include
        D:\msys64\mingw64\include
        D:\msys64\mingw64\lib\gcc\x86_64-w64-mingw32\12.2.0\include-fixed
    Standard Version: c++23
    IntelliSense Mode: windows-gcc-x64
    Other Flags:
        --g++
        --gnu_version=120200
Total Memory Usage: 262 MB

------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 3428

NOTE: the mre.cpp file is the Minimum Reproducible Example provided in the bug report. Other files are confirmed to have no effect on this problem.

Language server log:

loggingLevel: Debug
Autocomplete is enabled.
Error squiggles are enabled if all header dependencies are resolved.
Hover is enabled.
IntelliSense Engine = default.
File exclude: **/.vscode
File exclude: **/.vs
File exclude: **/CVS
File exclude: **/.git
File exclude: **/.svn
File exclude: **/Thumbs.db
File exclude: **/.hg
File exclude: **/.DS_Store
Search exclude: **/node_modules
Search exclude: **/*.code-search
Search exclude: **/bower_components
LSP: cpptools/didChangeCppProperties (id: 1)
LSP: cpptools/queryCompilerDefaults (id: 2)
Code browsing service initialized
Attempting to get defaults from C++ compiler in "compilerPath" property: 'D:\msys64\mingw64\bin\gcc.exe'
Querying compiler for default C++ language standard using command line: D:\msys64\mingw64\bin\gcc.exe -x c++ -E -dM nul
LSP: Message ignored due to no registered handler: $/setTrace
Detected language standard version: gnu++17
Querying compiler's default target using command line: "D:\msys64\mingw64\bin\gcc.exe" -dumpmachine
Compiler returned default target value: x86_64-w64-mingw32
Compiler query command line: D:\msys64\mingw64\bin\gcc.exe -std=c++23 -m64 -Wp,-v -E -dM -x c++ nul
Attempting to get defaults from C compiler in "compilerPath" property: 'D:\msys64\mingw64\bin\gcc.exe'
Compiler query command line: D:\msys64\mingw64\bin\gcc.exe -std=c17 -m64 -Wp,-v -E -dM -x c nul
  Folder: D:/MSYS64/MINGW64/INCLUDE/ will be indexed
  Folder: D:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/12.2.0/INCLUDE/ will be indexed
  Folder: D:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/12.2.0/INCLUDE-FIXED/ will be indexed
  Folder: E:/CPPPLAYGROUND/ will be indexed
Discovering files...
  Processing folder (recursive): D:/MSYS64/MINGW64/INCLUDE/
Attempting to get defaults from C compiler in "compilerPath" property: 'D:\msys64\mingw64\bin\gcc.exe'
Attempting to get defaults from C++ compiler in "compilerPath" property: 'D:\msys64\mingw64\bin\gcc.exe'
Compiler query command line: D:\msys64\mingw64\bin\gcc.exe -std=gnu++17 -m64 -Wp,-v -E -dM -x c++ nul
  Processing folder (recursive): D:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/12.2.0/INCLUDE/
  Processing folder (recursive): D:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/12.2.0/INCLUDE-FIXED/
  Processing folder (recursive): E:/CPPPLAYGROUND/
  Discovering files: 3429 file(s) processed
  0 file(s) removed from database
Done discovering files.
Populating include completion cache.
Parsing remaining files...
  Parsing: 0 files(s) processed
Done parsing remaining files.
LSP: cpptools/didChangeCppProperties (id: 3)
LSP: cpptools/didChangeSettings
Autocomplete is enabled.
Error squiggles are enabled if all header dependencies are resolved.
Hover is enabled.
IntelliSense Engine = default.
Enhanced Colorization is enabled.
LSP: cpptools/didChangeSettings
Autocomplete is enabled.
Error squiggles are enabled if all header dependencies are resolved.
Hover is enabled.
IntelliSense Engine = default.
Enhanced Colorization is enabled.
LSP: cpptools/didChangeSettings
Autocomplete is enabled.
Error squiggles are enabled if all header dependencies are resolved.
Hover is enabled.
IntelliSense Engine = default.
Enhanced Colorization is enabled.
LSP: cpptools/didChangeSettings
Autocomplete is enabled.
Error squiggles are enabled if all header dependencies are resolved.
Hover is enabled.
IntelliSense Engine = default.
Enhanced Colorization is enabled.
LSP: textDocument/didOpen: file:///e%3A/CppPlayground/mre.cpp
LSP: cpptools/getDocumentSymbols: file:///e%3A/CppPlayground/mre.cpp (id: 4)
LSP: cpptools/getCodeActions: file:///e%3A/CppPlayground/mre.cpp (id: 5)
LSP: cpptools/getInlayHints: file:///e%3A/CppPlayground/mre.cpp (id: 6)
LSP: cpptools/getDocumentSymbols: file:///e%3A/CppPlayground/mre.cpp (id: 7)
LSP: cpptools/getFoldingRanges: file:///e%3A/CppPlayground/mre.cpp (id: 8)
LSP: cpptools/getSemanticTokens: file:///e%3A/CppPlayground/mre.cpp (id: 9)
LSP: cpptools/getCodeActions: file:///e%3A/CppPlayground/mre.cpp (id: 10)
LSP: $/cancelRequest (cpptools/getDocumentSymbols, id: 4)
LSP: $/cancelRequest (<unknown/completed>, id: 5)
LSP: cpptools/textEditorSelectionChange
LSP: cpptools/activeDocumentChange: file:///e%3A/CppPlayground/mre.cpp
sending compilation args for E:\CppPlayground\mre.cpp
  include: E:\CPPPLAYGROUND
  include: E:\
  include: D:\MSYS64\MINGW64\INCLUDE\C++\12.2.0
  include: D:\MSYS64\MINGW64\INCLUDE\C++\12.2.0\X86_64-W64-MINGW32
  include: D:\MSYS64\MINGW64\INCLUDE\C++\12.2.0\BACKWARD
  include: D:\MSYS64\MINGW64\LIB\GCC\X86_64-W64-MINGW32\12.2.0\INCLUDE
  include: D:\MSYS64\MINGW64\INCLUDE
  include: D:\MSYS64\MINGW64\LIB\GCC\X86_64-W64-MINGW32\12.2.0\INCLUDE-FIXED
  define: __DBL_MIN_EXP__=(-1021)
  define: __UINT_LEAST16_MAX__=0xffff
  define: __FLT16_HAS_QUIET_NAN__=1
  define: __ATOMIC_ACQUIRE=2
  define: __FLT128_MAX_10_EXP__=4932
  define: __FLT_MIN__=1.17549435082228750796873653722224568e-38F
  define: __GCC_IEC_559_COMPLEX=2
  define: __UINT_LEAST8_TYPE__=unsigned char
  define: __SIZEOF_FLOAT80__=16
  define: __INTMAX_C(c)=c ## LL
  define: __CHAR_BIT__=8
  define: __MINGW32__=1
  define: __UINT8_MAX__=0xff
  define: __SCHAR_WIDTH__=8
  define: _WIN64=1
  define: __WINT_MAX__=0xffff
  define: __FLT32_MIN_EXP__=(-125)
  define: __ORDER_LITTLE_ENDIAN__=1234
  define: __SIZE_MAX__=0xffffffffffffffffULL
  define: __WCHAR_MAX__=0xffff
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2=1
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4=1
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8=1
  define: __GCC_ATOMIC_CHAR_LOCK_FREE=2
  define: __GCC_IEC_559=2
  define: __FLT32X_DECIMAL_DIG__=17
  define: __FLT_EVAL_METHOD__=0
  define: __FLT64_DECIMAL_DIG__=17
  define: __GCC_ATOMIC_CHAR32_T_LOCK_FREE=2
  define: __UINT_FAST64_MAX__=0xffffffffffffffffULL
  define: __SIG_ATOMIC_TYPE__=int
  define: __DBL_MIN_10_EXP__=(-307)
  define: __FINITE_MATH_ONLY__=0
  define: __FLT32X_MAX_EXP__=1024
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1
  define: __FLT32_HAS_DENORM__=1
  define: __UINT_FAST8_MAX__=0xff
  define: __DEC64_MAX_EXP__=385
  define: __INT8_C(c)=c
  define: __INT_LEAST8_WIDTH__=8
  define: __UINT_LEAST64_MAX__=0xffffffffffffffffULL
  define: __INT_LEAST8_MAX__=0x7f
  define: __SHRT_MAX__=0x7fff
  define: __LDBL_MAX__=1.18973149535723176502126385303097021e+4932L
  define: __FLT64X_MAX_10_EXP__=4932
  define: __LDBL_IS_IEC_60559__=2
  define: __FLT64X_HAS_QUIET_NAN__=1
  define: __UINT_LEAST8_MAX__=0xff
  define: __GCC_ATOMIC_BOOL_LOCK_FREE=2
  define: __FLT128_DENORM_MIN__=6.47517511943802511092443895822764655e-4966F128
  define: __UINTMAX_TYPE__=long long unsigned int
  define: __DEC32_EPSILON__=1E-6DF
  define: __FLT_EVAL_METHOD_TS_18661_3__=0
  define: __UINT32_MAX__=0xffffffffU
  define: __GXX_EXPERIMENTAL_CXX0X__=1
  define: __DBL_DENORM_MIN__=double(4.94065645841246544176568792868221372e-324L)
  define: __FLT128_MIN_EXP__=(-16381)
  define: __WINT_MIN__=0
  define: __FLT128_MIN_10_EXP__=(-4931)
  define: __FLT32X_IS_IEC_60559__=2
  define: __INT_LEAST16_WIDTH__=16
  define: __SCHAR_MAX__=0x7f
  define: __FLT128_MANT_DIG__=113
  define: __WCHAR_MIN__=0
  define: __INT64_C(c)=c ## LL
  define: __GCC_ATOMIC_POINTER_LOCK_FREE=2
  define: __FLT32X_MANT_DIG__=53
  define: __GCC_ATOMIC_CHAR16_T_LOCK_FREE=2
  define: __FLT32_MAX_10_EXP__=38
  define: __FLT64X_EPSILON__=1.08420217248550443400745280086994171e-19F64x
  define: __STDC_HOSTED__=1
  define: __DEC64_MIN_EXP__=(-382)
  define: __WIN64=1
  define: __DBL_DIG__=15
  define: __FLT32_DIG__=6
  define: __FLT_EPSILON__=1.19209289550781250000000000000000000e-7F
  define: __GXX_WEAK__=1
  define: __SHRT_WIDTH__=16
  define: __FLT32_IS_IEC_60559__=2
  define: __LDBL_MIN__=3.36210314311209350626267781732175260e-4932L
  define: __DBL_IS_IEC_60559__=2
  define: __DEC32_MAX__=9.999999E96DF
  define: __CHAR8_TYPE__=unsigned char
  define: __FLT64X_DENORM_MIN__=3.64519953188247460252840593361941982e-4951F64x
  define: __FLT32X_HAS_INFINITY__=1
  define: __INT32_MAX__=0x7fffffff
  define: __FLT16_DIG__=3
  define: __INT_WIDTH__=32
  define: __SIZEOF_LONG__=4
  define: __UINT16_C(c)=c
  define: __DECIMAL_DIG__=21
  define: __FLT64_EPSILON__=2.22044604925031308084726333618164062e-16F64
  define: __INT16_MAX__=0x7fff
  define: __FLT64_MIN_EXP__=(-1021)
  define: __FLT64X_MIN_10_EXP__=(-4931)
  define: __LDBL_HAS_QUIET_NAN__=1
  define: __FLT16_MIN_EXP__=(-13)
  define: __FLT64_MANT_DIG__=53
  define: _REENTRANT=1
  define: __FLT64X_MANT_DIG__=64
  define: __GNUC__=12
  define: __GXX_RTTI=1
  define: __MMX__=1
  define: __FLT_HAS_DENORM__=1
  define: __SIZEOF_LONG_DOUBLE__=16
  define: __BIGGEST_ALIGNMENT__=16
  define: __STDC_UTF_16__=1
  define: __FLT64_MAX_10_EXP__=308
  define: __FLT16_MAX_10_EXP__=4
  define: __FLT32_HAS_INFINITY__=1
  define: __DBL_MAX__=double(1.79769313486231570814527423731704357e+308L)
  define: __INT_FAST32_MAX__=0x7fffffff
  define: __WINNT=1
  define: __DBL_HAS_INFINITY__=1
  define: __SIZEOF_FLOAT__=4
  define: __WINNT__=1
  define: __HAVE_SPECULATION_SAFE_VALUE=1
  define: __DEC32_MIN_EXP__=(-94)
  define: __INTPTR_WIDTH__=64
  define: __FLT64X_HAS_INFINITY__=1
  define: __UINT_LEAST32_MAX__=0xffffffffU
  define: __FLT32X_HAS_DENORM__=1
  define: __INT_FAST16_TYPE__=short int
  define: __STRICT_ANSI__=1
  define: __MMX_WITH_SSE__=1
  define: __LDBL_HAS_DENORM__=1
  define: __SEG_GS=1
  define: __cplusplus=202100L
  define: __DEC32_MIN__=1E-95DF
  define: __DEPRECATED=1
  define: __DBL_MAX_EXP__=1024
  define: __WCHAR_WIDTH__=16
  define: __FLT32_MAX__=3.40282346638528859811704183484516925e+38F32
  define: __DEC128_EPSILON__=1E-33DL
  define: __FLT16_DECIMAL_DIG__=5
  define: __SSE2_MATH__=1
  define: __ATOMIC_HLE_RELEASE=131072
  define: __WIN32__=1
  define: __PTRDIFF_MAX__=0x7fffffffffffffffLL
  define: __amd64=1
  define: __ATOMIC_HLE_ACQUIRE=65536
  define: __GNUG__=12
  define: __LONG_LONG_MAX__=0x7fffffffffffffffLL
  define: __SIZEOF_SIZE_T__=8
  define: __FLT64X_MIN_EXP__=(-16381)
  define: __SIZEOF_WINT_T__=2
  define: __LONG_LONG_WIDTH__=64
  define: __FLT32_MAX_EXP__=128
  define: __GXX_ABI_VERSION=1017
  define: __FLT128_HAS_INFINITY__=1
  define: __FLT_MIN_EXP__=(-125)
  define: __x86_64=1
  define: __INT_FAST64_TYPE__=long long int
  define: __FLT64_DENORM_MIN__=4.94065645841246544176568792868221372e-324F64
  define: __DBL_MIN__=double(2.22507385850720138309023271733240406e-308L)
  define: __FLT16_DENORM_MIN__=5.96046447753906250000000000000000000e-8F16
  define: __FLT128_EPSILON__=1.92592994438723585305597794258492732e-34F128
  define: __FLT64X_NORM_MAX__=1.18973149535723176502126385303097021e+4932F64x
  define: __SIZEOF_POINTER__=8
  define: __SIZE_TYPE__=long long unsigned int
  define: __DBL_HAS_QUIET_NAN__=1
  define: __FLT32X_EPSILON__=2.22044604925031308084726333618164062e-16F32x
  define: __DECIMAL_BID_FORMAT__=1
  define: __GXX_TYPEINFO_EQUALITY_INLINE=0
  define: __FLT64_MIN_10_EXP__=(-307)
  define: __FLT16_MIN_10_EXP__=(-4)
  define: __FLT64X_DECIMAL_DIG__=21
  define: __DEC128_MIN__=1E-6143DL
  define: __REGISTER_PREFIX__=
  define: __UINT16_MAX__=0xffff
  define: __cdecl=__attribute__((__cdecl__))
  define: __LDBL_HAS_INFINITY__=1
  define: __FLT32_MIN__=1.17549435082228750796873653722224568e-38F32
  define: __UINT8_TYPE__=unsigned char
  define: __FLT_DIG__=6
  define: __NO_INLINE__=1
  define: __DEC_EVAL_METHOD__=2
  define: __DEC128_MAX__=9.999999999999999999999999999999999E6144DL
  define: __FLT_MANT_DIG__=24
  define: __LDBL_DECIMAL_DIG__=21
  define: __VERSION__="12.2.0"
  define: __UINT64_C(c)=c ## ULL
  define: _WIN32=1
  define: __SEH__=1
  define: __INT_LEAST32_MAX__=0x7fffffff
  define: __GCC_ATOMIC_INT_LOCK_FREE=2
  define: __FLT128_MAX_EXP__=16384
  define: __FLT32_MANT_DIG__=24
  define: __FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__
  define: __FLT32X_MIN_EXP__=(-1021)
  define: __FLT128_HAS_DENORM__=1
  define: __FLT32_DECIMAL_DIG__=9
  define: __FLT128_DIG__=33
  define: __INT32_C(c)=c
  define: __DEC64_EPSILON__=1E-15DD
  define: __ORDER_PDP_ENDIAN__=3412
  define: __DEC128_MIN_EXP__=(-6142)
  define: __INT_FAST32_TYPE__=int
  define: __UINT_LEAST16_TYPE__=short unsigned int
  define: __DBL_HAS_DENORM__=1
  define: __UINT64_MAX__=0xffffffffffffffffULL
  define: __FLT_IS_IEC_60559__=2
  define: __GNUC_WIDE_EXECUTION_CHARSET_NAME="UTF-16LE"
  define: __FLT64X_DIG__=18
  define: __INT8_TYPE__=signed char
  define: __GCC_ASM_FLAG_OUTPUTS__=1
  define: __UINT32_TYPE__=unsigned int
  define: __FLT_RADIX__=2
  define: __INT_LEAST16_TYPE__=short int
  define: __LDBL_EPSILON__=1.08420217248550443400745280086994171e-19L
  define: __UINTMAX_C(c)=c ## ULL
  define: __FLT32X_MIN__=2.22507385850720138309023271733240406e-308F32x
  define: __SIG_ATOMIC_MAX__=0x7fffffff
  define: __GCC_ATOMIC_WCHAR_T_LOCK_FREE=2
  define: __USER_LABEL_PREFIX__=
  define: __SIZEOF_PTRDIFF_T__=8
  define: __LDBL_DIG__=18
  define: __FLT64_IS_IEC_60559__=2
  define: __x86_64__=1
  define: __FLT16_IS_IEC_60559__=2
  define: __FLT16_MAX_EXP__=16
  define: __DEC32_SUBNORMAL_MIN__=0.000001E-95DF
  define: __MSVCRT__=1
  define: __INT_FAST16_MAX__=0x7fff
  define: __GCC_CONSTRUCTIVE_SIZE=64
  define: __FLT64_DIG__=15
  define: __UINT_FAST32_MAX__=0xffffffffU
  define: __UINT_LEAST64_TYPE__=long long unsigned int
  define: __FLT16_EPSILON__=9.76562500000000000000000000000000000e-4F16
  define: __FLT_HAS_QUIET_NAN__=1
  define: __FLT_MAX_10_EXP__=38
  define: __LONG_MAX__=0x7fffffffL
  define: __FLT64X_HAS_DENORM__=1
  define: __DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL
  define: __FLT_HAS_INFINITY__=1
  define: __GNUC_EXECUTION_CHARSET_NAME="UTF-8"
  define: __UINT_FAST16_TYPE__=short unsigned int
  define: __DEC64_MAX__=9.999999999999999E384DD
  define: __INT_FAST32_WIDTH__=32
  define: __CHAR16_TYPE__=short unsigned int
  define: __PRAGMA_REDEFINE_EXTNAME=1
  define: __SIZE_WIDTH__=64
  define: __SEG_FS=1
  define: __INT_LEAST16_MAX__=0x7fff
  define: __FLT16_NORM_MAX__=6.55040000000000000000000000000000000e+4F16
  define: __DEC64_MANT_DIG__=16
  define: __INT64_MAX__=0x7fffffffffffffffLL
  define: __FLT32_DENORM_MIN__=1.40129846432481707092372958328991613e-45F32
  define: __SIG_ATOMIC_WIDTH__=32
  define: __INT_LEAST64_TYPE__=long long int
  define: __INT16_TYPE__=short int
  define: __INT_LEAST8_TYPE__=signed char
  define: __FLT16_MAX__=6.55040000000000000000000000000000000e+4F16
  define: __nocona__=1
  define: __SIZEOF_INT__=4
  define: __DEC32_MAX_EXP__=97
  define: __INT_FAST8_MAX__=0x7f
  define: __FLT128_MAX__=1.18973149535723176508575932662800702e+4932F128
  define: __INTPTR_MAX__=0x7fffffffffffffffLL
  define: __FLT64_HAS_QUIET_NAN__=1
  define: __stdcall=__attribute__((__stdcall__))
  define: __FLT32_MIN_10_EXP__=(-37)
  define: __EXCEPTIONS=1
  define: __GXX_MERGED_TYPEINFO_NAMES=0
  define: __PTRDIFF_WIDTH__=64
  define: __LDBL_MANT_DIG__=64
  define: __FLT64_HAS_INFINITY__=1
  define: __FLT64X_MAX__=1.18973149535723176502126385303097021e+4932F64x
  define: __FLT16_HAS_INFINITY__=1
  define: __STDCPP_DEFAULT_NEW_ALIGNMENT__=16
  define: __SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)
  define: __GCC_ATOMIC_LONG_LOCK_FREE=2
  define: __DEC32_MANT_DIG__=7
  define: __INTPTR_TYPE__=long long int
  define: __UINT16_TYPE__=short unsigned int
  define: __WCHAR_TYPE__=short unsigned int
  define: __pic__=1
  define: __UINTPTR_MAX__=0xffffffffffffffffULL
  define: __INT_FAST64_WIDTH__=64
  define: __INT_FAST64_MAX__=0x7fffffffffffffffLL
  define: __GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1
  define: __FLT_NORM_MAX__=3.40282346638528859811704183484516925e+38F
  define: __FLT64X_MAX_EXP__=16384
  define: __UINT_FAST64_TYPE__=long long unsigned int
  define: __INT_MAX__=0x7fffffff
  define: __nocona=1
  define: __code_model_medium__=1
  define: __INT64_TYPE__=long long int
  define: __FLT_MAX_EXP__=128
  define: __ORDER_BIG_ENDIAN__=4321
  define: __DBL_MANT_DIG__=53
  define: __SIZEOF_FLOAT128__=16
  define: __INT_LEAST64_MAX__=0x7fffffffffffffffLL
  define: __DEC64_MIN__=1E-383DD
  define: __WINT_TYPE__=short unsigned int
  define: __UINT_LEAST32_TYPE__=unsigned int
  define: __SIZEOF_SHORT__=2
  define: __FLT32_NORM_MAX__=3.40282346638528859811704183484516925e+38F32
  define: __SSE__=1
  define: __LDBL_MIN_EXP__=(-16381)
  define: __FLT64_MAX__=1.79769313486231570814527423731704357e+308F64
  define: __amd64__=1
  define: __WINT_WIDTH__=16
  define: __INT_LEAST64_WIDTH__=64
  define: __LDBL_MAX_EXP__=16384
  define: __FLT32X_MAX_10_EXP__=308
  define: __WIN32=1
  define: __SIZEOF_INT128__=16
  define: __FLT16_MIN__=6.10351562500000000000000000000000000e-5F16
  define: __FLT64X_IS_IEC_60559__=2
  define: __WCHAR_UNSIGNED__=1
  define: __LDBL_MAX_10_EXP__=4932
  define: __ATOMIC_RELAXED=0
  define: __DBL_EPSILON__=double(2.22044604925031308084726333618164062e-16L)
  define: __thiscall=__attribute__((__thiscall__))
  define: __FLT128_MIN__=3.36210314311209350626267781732175260e-4932F128
  define: __UINT8_C(c)=c
  define: __FLT64_MAX_EXP__=1024
  define: __INT_LEAST32_TYPE__=int
  define: __SIZEOF_WCHAR_T__=2
  define: __GNUC_PATCHLEVEL__=0
  define: __FLT128_NORM_MAX__=1.18973149535723176508575932662800702e+4932F128
  define: __FLT64_NORM_MAX__=1.79769313486231570814527423731704357e+308F64
  define: __FLT128_HAS_QUIET_NAN__=1
  define: __INTMAX_MAX__=0x7fffffffffffffffLL
  define: __SSE3__=1
  define: __INT_FAST8_TYPE__=signed char
  define: __fastcall=__attribute__((__fastcall__))
  define: __FLT64X_MIN__=3.36210314311209350626267781732175260e-4932F64x
  define: __STDCPP_THREADS__=1
  define: __GNUC_STDC_INLINE__=1
  define: __FLT64_HAS_DENORM__=1
  define: __FLT32_EPSILON__=1.19209289550781250000000000000000000e-7F32
  define: __FLT16_HAS_DENORM__=1
  define: __DBL_DECIMAL_DIG__=17
  define: __STDC_UTF_32__=1
  define: __INT_FAST8_WIDTH__=8
  define: __FXSR__=1
  define: __FLT32X_MAX__=1.79769313486231570814527423731704357e+308F32x
  define: __DBL_NORM_MAX__=double(1.79769313486231570814527423731704357e+308L)
  define: __BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__
  define: __MINGW64__=1
  define: __GCC_DESTRUCTIVE_SIZE=64
  define: __INTMAX_WIDTH__=64
  define: __UINT64_TYPE__=long long unsigned int
  define: __UINT32_C(c)=c ## U
  define: __FLT_DENORM_MIN__=1.40129846432481707092372958328991613e-45F
  define: __FLT128_IS_IEC_60559__=2
  define: __INT8_MAX__=0x7f
  define: __LONG_WIDTH__=32
  define: __PIC__=1
  define: __UINT_FAST32_TYPE__=unsigned int
  define: __FLT16_MANT_DIG__=11
  define: __FLT32X_NORM_MAX__=1.79769313486231570814527423731704357e+308F32x
  define: __CHAR32_TYPE__=unsigned int
  define: __FLT_MAX__=3.40282346638528859811704183484516925e+38F
  define: __SSE2__=1
  define: __INT32_TYPE__=int
  define: __SIZEOF_DOUBLE__=8
  define: __FLT_MIN_10_EXP__=(-37)
  define: __FLT64_MIN__=2.22507385850720138309023271733240406e-308F64
  define: __INT_LEAST32_WIDTH__=32
  define: __INTMAX_TYPE__=long long int
  define: _INTEGRAL_MAX_BITS=64
  define: __DEC128_MAX_EXP__=6145
  define: __FLT32X_HAS_QUIET_NAN__=1
  define: __ATOMIC_CONSUME=1
  define: __GNUC_MINOR__=2
  define: __INT_FAST16_WIDTH__=16
  define: __UINTMAX_MAX__=0xffffffffffffffffULL
  define: __FLT32X_DENORM_MIN__=4.94065645841246544176568792868221372e-324F32x
  define: __DBL_MAX_10_EXP__=308
  define: __LDBL_DENORM_MIN__=3.64519953188247460252840593361941982e-4951L
  define: __GCC_ATOMIC_CHAR8_T_LOCK_FREE=2
  define: __INT16_C(c)=c
  define: __STDC__=1
  define: __FLT32X_DIG__=15
  define: __PTRDIFF_TYPE__=long long int
  define: __ATOMIC_SEQ_CST=5
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16=1
  define: __FLT32X_MIN_10_EXP__=(-307)
  define: __UINTPTR_TYPE__=long long unsigned int
  define: __DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD
  define: __DEC128_MANT_DIG__=34
  define: __LDBL_MIN_10_EXP__=(-4931)
  define: __SSE_MATH__=1
  define: __SIZEOF_LONG_LONG__=8
  define: __FLT128_DECIMAL_DIG__=36
  define: __GCC_ATOMIC_LLONG_LOCK_FREE=2
  define: __FLT32_HAS_QUIET_NAN__=1
  define: __FLT_DECIMAL_DIG__=9
  define: __UINT_FAST16_MAX__=0xffff
  define: __LDBL_NORM_MAX__=1.18973149535723176502126385303097021e+4932L
  define: __GCC_ATOMIC_SHORT_LOCK_FREE=2
  define: __UINT_FAST8_TYPE__=unsigned char
  define: __WIN64__=1
  define: __ATOMIC_ACQ_REL=4
  define: __ATOMIC_RELEASE=3
  define: __declspec(x)=__attribute__((x))
  other: --g++
  other: --gnu_version=120200
  stdver: c++23
  intelliSenseMode: windows-gcc-x64
Checking for syntax errors: E:\CppPlayground\mre.cpp
Queueing IntelliSense update for files in translation unit of: E:\CppPlayground\mre.cpp
Error squiggle count: 1
Update IntelliSense time (sec): 0.37
LSP: cpptools/getCodeActions: file:///e%3A/CppPlayground/mre.cpp (id: 11)
LSP: cpptools/getFoldingRanges: file:///e%3A/CppPlayground/mre.cpp (id: 12)


### Other Extensions

_No response_

### Additional context

_No response_
Bernardin-MS commented 1 year ago

This seems like an issue on shared VS component and is being tracked internally. The more upvotes on this or the original issue can help prioritize the fix.

Bernardin-MS commented 1 year ago

@00001H Also can you send a screenshot of the error message?

00001H commented 1 year ago

@Bernardin-MS Here it is. image Note: first line is cut off.

00001H commented 1 year ago

Note: tried reloading intellisense / reloading window / rebooting computer, and the error persists.

Bernardin-MS commented 1 year ago

Thank you for the screenshot, we've passed it along

Bernardin-MS commented 1 year ago

The VS internal bug is 1741449