Skip to content

Intellisense not recognizing predefined macros from Clang #11164

Closed

Description

Environment

  • OS and Version: macOS 13.4.1
  • VS Code Version:
    Version: 1.79.2
    Commit: 695af097c7bd098fbf017ce3ac85e09bbc5dda06
    Date: 2023-06-14T08:58:33.551Z
    Electron: 22.5.7
    Chromium: 108.0.5359.215
    Node.js: 16.17.1
    V8: 10.8.168.25-electron.0
    OS: Darwin arm64 22.5.0
  • C/C++ Extension Version: 1.16.3
  • Other extensions you installed (and if the issue persists after disabling them): ms-vscode.cmake-tools
  • Workspace: Single project, trivial project with just one trivial source.

Bug Summary and Steps to Reproduce

Bug Summary:

Intellisense does not aware of predefined macros from Clang. In my case __FILE_NAME__ macro

__FILE_NAME__ macro is one of the builtin macros from Clang Language Extensions - Link

Steps to reproduce:

  1. Make a simple CMake Clang Project

    mkdir clang_macro_test
    cd  clang_macro_test
  2. Create CMakeList.txt file

    cmake_minimum_required(VERSION 3.7...3.26)
    
    project(testProj, VERSION 1.0
            DESCRIPTION "Test project"
            LANGUAGES CXX)
    
    set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
    
    add_executable(testProj main.cpp)
    1. Create main.cpp
    #include <iostream>
    
    namespace {
        using std::cout, std::endl;
    }
    
    int main(int, char**) {
        __INT_FAST32_TYPE__ x = 1;
        const char* FILE_NAME = __FILE_NAME__;
        cout << __FILE_NAME__ << ":" << __LINE__ << endl;
        cout << "x: " << x << endl;
    
        return 0;
    }
  3. From CMake Tools, Select Kit Clang 14.0.3 arm64-apple-darwin22.5.0
    Select Okay When CMake Tools asks user want to configure the project.

  4. From the Visual studio code. Open project directort and open main.cpp. Error squiggle on the __FILE_NAME__
    Screenshot 2023-07-05 at 10 24 10

  5. Check PROBLEMS tab.
    Screenshot 2023-07-05 at 10 25 09

    [{
        "resource": "/Users/seungwon/Workspace/cpp/vscode-clang-predefined-macro-test/main.cpp",
        "owner": "C/C++: IntelliSense",
        "code": "20",
        "severity": 8,
        "message": "identifier \"__FILE_NAME__\" is undefined",
        "source": "C/C++",
        "startLineNumber": 9,
        "startColumn": 29,
        "endLineNumber": 9,
        "endColumn": 42
    }]
    

Expected behavior:

  1. No identifier "FILE_NAME" is undefined" error from the Intellisense.

Configuration and Logs

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/opt/homebrew/opt/llvm/bin/clang",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "macos-clang-arm64",
            "configurationProvider": "ms-vscode.cmake-tools"
        }
    ],
    "version": 4
}

C/C++ Log

Cannot append all logs `Comment is too long (maximum is 65536 characters)`

Appended end of the log


include: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1
  include: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3/include
  include: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
  include: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
  framework: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks
  define: _LP64=1
  define: __AARCH64EL__=1
  define: __AARCH64_CMODEL_SMALL__=1
  define: __AARCH64_SIMD__=1
  define: __APPLE_CC__=6000
  define: __APPLE__=1
  define: __ARM64_ARCH_8__=1
  define: __ARM_64BIT_STATE=1
  define: __ARM_ACLE=200
  define: __ARM_ALIGN_MAX_STACK_PWR=4
  define: __ARM_ARCH=8
  define: __ARM_ARCH_8_3__=1
  define: __ARM_ARCH_8_4__=1
  define: __ARM_ARCH_8_5__=1
  define: __ARM_ARCH_ISA_A64=1
  define: __ARM_ARCH_PROFILE='A'
  define: __ARM_FEATURE_AES=1
  define: __ARM_FEATURE_ATOMICS=1
  define: __ARM_FEATURE_CLZ=1
  define: __ARM_FEATURE_COMPLEX=1
  define: __ARM_FEATURE_CRC32=1
  define: __ARM_FEATURE_CRYPTO=1
  define: __ARM_FEATURE_DIRECTED_ROUNDING=1
  define: __ARM_FEATURE_DIV=1
  define: __ARM_FEATURE_DOTPROD=1
  define: __ARM_FEATURE_FMA=1
  define: __ARM_FEATURE_FP16_FML=1
  define: __ARM_FEATURE_FP16_SCALAR_ARITHMETIC=1
  define: __ARM_FEATURE_FP16_VECTOR_ARITHMETIC=1
  define: __ARM_FEATURE_FRINT=1
  define: __ARM_FEATURE_IDIV=1
  define: __ARM_FEATURE_JCVT=1
  define: __ARM_FEATURE_LDREX=0xF
  define: __ARM_FEATURE_NUMERIC_MAXMIN=1
  define: __ARM_FEATURE_QRDMX=1
  define: __ARM_FEATURE_SHA2=1
  define: __ARM_FEATURE_SHA3=1
  define: __ARM_FEATURE_SHA512=1
  define: __ARM_FEATURE_SM3=1
  define: __ARM_FEATURE_SM4=1
  define: __ARM_FEATURE_UNALIGNED=1
  define: __ARM_FP=0xE
  define: __ARM_FP16_ARGS=1
  define: __ARM_FP16_FORMAT_IEEE=1
  define: __ARM_NEON=1
  define: __ARM_NEON_FP=0xE
  define: __ARM_NEON__=1
  define: __ARM_PCS_AAPCS64=1
  define: __ARM_SIZEOF_MINIMAL_ENUM=4
  define: __ARM_SIZEOF_WCHAR_T=4
  define: __ATOMIC_ACQUIRE=2
  define: __ATOMIC_ACQ_REL=4
  define: __ATOMIC_CONSUME=1
  define: __ATOMIC_RELAXED=0
  define: __ATOMIC_RELEASE=3
  define: __ATOMIC_SEQ_CST=5
  define: __BIGGEST_ALIGNMENT__=8
  define: __BITINT_MAXWIDTH__=128
  define: __BOOL_WIDTH__=8
  define: __BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__
  define: __CHAR16_TYPE__=unsigned short
  define: __CHAR32_TYPE__=unsigned int
  define: __CHAR_BIT__=8
  define: __CLANG_ATOMIC_BOOL_LOCK_FREE=2
  define: __CLANG_ATOMIC_CHAR16_T_LOCK_FREE=2
  define: __CLANG_ATOMIC_CHAR32_T_LOCK_FREE=2
  define: __CLANG_ATOMIC_CHAR_LOCK_FREE=2
  define: __CLANG_ATOMIC_INT_LOCK_FREE=2
  define: __CLANG_ATOMIC_LLONG_LOCK_FREE=2
  define: __CLANG_ATOMIC_LONG_LOCK_FREE=2
  define: __CLANG_ATOMIC_POINTER_LOCK_FREE=2
  define: __CLANG_ATOMIC_SHORT_LOCK_FREE=2
  define: __CLANG_ATOMIC_WCHAR_T_LOCK_FREE=2
  define: __CONSTANT_CFSTRINGS__=1
  define: __DBL_DECIMAL_DIG__=17
  define: __DBL_DENORM_MIN__=4.9406564584124654e-324
  define: __DBL_DIG__=15
  define: __DBL_EPSILON__=2.2204460492503131e-16
  define: __DBL_HAS_DENORM__=1
  define: __DBL_HAS_INFINITY__=1
  define: __DBL_HAS_QUIET_NAN__=1
  define: __DBL_MANT_DIG__=53
  define: __DBL_MAX_10_EXP__=308
  define: __DBL_MAX_EXP__=1024
  define: __DBL_MAX__=1.7976931348623157e+308
  define: __DBL_MIN_10_EXP__=(-307)
  define: __DBL_MIN_EXP__=(-1021)
  define: __DBL_MIN__=2.2250738585072014e-308
  define: __DECIMAL_DIG__=__LDBL_DECIMAL_DIG__
  define: __DEPRECATED=1
  define: __DYNAMIC__=1
  define: __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__=130000
  define: __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__=130000
  define: __EXCEPTIONS=1
  define: __FINITE_MATH_ONLY__=0
  define: __FLT16_DECIMAL_DIG__=5
  define: __FLT16_DENORM_MIN__=5.9604644775390625e-8F16
  define: __FLT16_DIG__=3
  define: __FLT16_EPSILON__=9.765625e-4F16
  define: __FLT16_HAS_DENORM__=1
  define: __FLT16_HAS_INFINITY__=1
  define: __FLT16_HAS_QUIET_NAN__=1
  define: __FLT16_MANT_DIG__=11
  define: __FLT16_MAX_10_EXP__=4
  define: __FLT16_MAX_EXP__=16
  define: __FLT16_MAX__=6.5504e+4F16
  define: __FLT16_MIN_10_EXP__=(-4)
  define: __FLT16_MIN_EXP__=(-13)
  define: __FLT16_MIN__=6.103515625e-5F16
  define: __FLT_DECIMAL_DIG__=9
  define: __FLT_DENORM_MIN__=1.40129846e-45F
  define: __FLT_DIG__=6
  define: __FLT_EPSILON__=1.19209290e-7F
  define: __FLT_HAS_DENORM__=1
  define: __FLT_HAS_INFINITY__=1
  define: __FLT_HAS_QUIET_NAN__=1
  define: __FLT_MANT_DIG__=24
  define: __FLT_MAX_10_EXP__=38
  define: __FLT_MAX_EXP__=128
  define: __FLT_MAX__=3.40282347e+38F
  define: __FLT_MIN_10_EXP__=(-37)
  define: __FLT_MIN_EXP__=(-125)
  define: __FLT_MIN__=1.17549435e-38F
  define: __FLT_RADIX__=2
  define: __GCC_ATOMIC_BOOL_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR16_T_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR32_T_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR_LOCK_FREE=2
  define: __GCC_ATOMIC_INT_LOCK_FREE=2
  define: __GCC_ATOMIC_LLONG_LOCK_FREE=2
  define: __GCC_ATOMIC_LONG_LOCK_FREE=2
  define: __GCC_ATOMIC_POINTER_LOCK_FREE=2
  define: __GCC_ATOMIC_SHORT_LOCK_FREE=2
  define: __GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1
  define: __GCC_ATOMIC_WCHAR_T_LOCK_FREE=2
  define: __GCC_HAVE_DWARF2_CFI_ASM=1
  define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1
  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: __GNUC_GNU_INLINE__=1
  define: __GNUC_MINOR__=2
  define: __GNUC_PATCHLEVEL__=1
  define: __GNUC__=4
  define: __GNUG__=4
  define: __GXX_ABI_VERSION=1002
  define: __GXX_EXPERIMENTAL_CXX0X__=1
  define: __GXX_RTTI=1
  define: __GXX_WEAK__=1
  define: __INT16_C_SUFFIX__=
  define: __INT16_FMTd__="hd"
  define: __INT16_FMTi__="hi"
  define: __INT16_MAX__=32767
  define: __INT16_TYPE__=short
  define: __INT32_C_SUFFIX__=
  define: __INT32_FMTd__="d"
  define: __INT32_FMTi__="i"
  define: __INT32_MAX__=2147483647
  define: __INT32_TYPE__=int
  define: __INT64_C_SUFFIX__=LL
  define: __INT64_FMTd__="lld"
  define: __INT64_FMTi__="lli"
  define: __INT64_MAX__=9223372036854775807LL
  define: __INT64_TYPE__=long long int
  define: __INT8_C_SUFFIX__=
  define: __INT8_FMTd__="hhd"
  define: __INT8_FMTi__="hhi"
  define: __INT8_MAX__=127
  define: __INT8_TYPE__=signed char
  define: __INTMAX_C_SUFFIX__=L
  define: __INTMAX_FMTd__="ld"
  define: __INTMAX_FMTi__="li"
  define: __INTMAX_MAX__=9223372036854775807L
  define: __INTMAX_TYPE__=long int
  define: __INTMAX_WIDTH__=64
  define: __INTPTR_FMTd__="ld"
  define: __INTPTR_FMTi__="li"
  define: __INTPTR_MAX__=9223372036854775807L
  define: __INTPTR_TYPE__=long int
  define: __INTPTR_WIDTH__=64
  define: __INT_FAST16_FMTd__="hd"
  define: __INT_FAST16_FMTi__="hi"
  define: __INT_FAST16_MAX__=32767
  define: __INT_FAST16_TYPE__=short
  define: __INT_FAST16_WIDTH__=16
  define: __INT_FAST32_FMTd__="d"
  define: __INT_FAST32_FMTi__="i"
  define: __INT_FAST32_MAX__=2147483647
  define: __INT_FAST32_TYPE__=int
  define: __INT_FAST32_WIDTH__=32
  define: __INT_FAST64_FMTd__="lld"
  define: __INT_FAST64_FMTi__="lli"
  define: __INT_FAST64_MAX__=9223372036854775807LL
  define: __INT_FAST64_TYPE__=long long int
  define: __INT_FAST64_WIDTH__=64
  define: __INT_FAST8_FMTd__="hhd"
  define: __INT_FAST8_FMTi__="hhi"
  define: __INT_FAST8_MAX__=127
  define: __INT_FAST8_TYPE__=signed char
  define: __INT_FAST8_WIDTH__=8
  define: __INT_LEAST16_FMTd__="hd"
  define: __INT_LEAST16_FMTi__="hi"
  define: __INT_LEAST16_MAX__=32767
  define: __INT_LEAST16_TYPE__=short
  define: __INT_LEAST16_WIDTH__=16
  define: __INT_LEAST32_FMTd__="d"
  define: __INT_LEAST32_FMTi__="i"
  define: __INT_LEAST32_MAX__=2147483647
  define: __INT_LEAST32_TYPE__=int
  define: __INT_LEAST32_WIDTH__=32
  define: __INT_LEAST64_FMTd__="lld"
  define: __INT_LEAST64_FMTi__="lli"
  define: __INT_LEAST64_MAX__=9223372036854775807LL
  define: __INT_LEAST64_TYPE__=long long int
  define: __INT_LEAST64_WIDTH__=64
  define: __INT_LEAST8_FMTd__="hhd"
  define: __INT_LEAST8_FMTi__="hhi"
  define: __INT_LEAST8_MAX__=127
  define: __INT_LEAST8_TYPE__=signed char
  define: __INT_LEAST8_WIDTH__=8
  define: __INT_MAX__=2147483647
  define: __INT_WIDTH__=32
  define: __LDBL_DECIMAL_DIG__=17
  define: __LDBL_DENORM_MIN__=4.9406564584124654e-324L
  define: __LDBL_DIG__=15
  define: __LDBL_EPSILON__=2.2204460492503131e-16L
  define: __LDBL_HAS_DENORM__=1
  define: __LDBL_HAS_INFINITY__=1
  define: __LDBL_HAS_QUIET_NAN__=1
  define: __LDBL_MANT_DIG__=53
  define: __LDBL_MAX_10_EXP__=308
  define: __LDBL_MAX_EXP__=1024
  define: __LDBL_MAX__=1.7976931348623157e+308L
  define: __LDBL_MIN_10_EXP__=(-307)
  define: __LDBL_MIN_EXP__=(-1021)
  define: __LDBL_MIN__=2.2250738585072014e-308L
  define: __LITTLE_ENDIAN__=1
  define: __LLONG_WIDTH__=64
  define: __LONG_LONG_MAX__=9223372036854775807LL
  define: __LONG_MAX__=9223372036854775807L
  define: __LONG_WIDTH__=64
  define: __LP64__=1
  define: __MACH__=1
  define: __NO_INLINE__=1
  define: __NO_MATH_ERRNO__=1
  define: __OBJC_BOOL_IS_BOOL=1
  define: __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES=3
  define: __OPENCL_MEMORY_SCOPE_DEVICE=2
  define: __OPENCL_MEMORY_SCOPE_SUB_GROUP=4
  define: __OPENCL_MEMORY_SCOPE_WORK_GROUP=1
  define: __OPENCL_MEMORY_SCOPE_WORK_ITEM=0
  define: __ORDER_BIG_ENDIAN__=4321
  define: __ORDER_LITTLE_ENDIAN__=1234
  define: __ORDER_PDP_ENDIAN__=3412
  define: __PIC__=2
  define: __POINTER_WIDTH__=64
  define: __PRAGMA_REDEFINE_EXTNAME=1
  define: __PTRDIFF_FMTd__="ld"
  define: __PTRDIFF_FMTi__="li"
  define: __PTRDIFF_MAX__=9223372036854775807L
  define: __PTRDIFF_TYPE__=long int
  define: __PTRDIFF_WIDTH__=64
  define: __REGISTER_PREFIX__=
  define: __SCHAR_MAX__=127
  define: __SHRT_MAX__=32767
  define: __SHRT_WIDTH__=16
  define: __SIG_ATOMIC_MAX__=2147483647
  define: __SIG_ATOMIC_WIDTH__=32
  define: __SIZEOF_DOUBLE__=8
  define: __SIZEOF_FLOAT__=4
  define: __SIZEOF_INT128__=16
  define: __SIZEOF_INT__=4
  define: __SIZEOF_LONG_DOUBLE__=8
  define: __SIZEOF_LONG_LONG__=8
  define: __SIZEOF_LONG__=8
  define: __SIZEOF_POINTER__=8
  define: __SIZEOF_PTRDIFF_T__=8
  define: __SIZEOF_SHORT__=2
  define: __SIZEOF_SIZE_T__=8
  define: __SIZEOF_WCHAR_T__=4
  define: __SIZEOF_WINT_T__=4
  define: __SIZE_FMTX__="lX"
  define: __SIZE_FMTo__="lo"
  define: __SIZE_FMTu__="lu"
  define: __SIZE_FMTx__="lx"
  define: __SIZE_MAX__=18446744073709551615UL
  define: __SIZE_TYPE__=long unsigned int
  define: __SIZE_WIDTH__=64
  define: __SSP__=1
  define: __STDCPP_DEFAULT_NEW_ALIGNMENT__=16UL
  define: __STDCPP_THREADS__=1
  define: __STDC_HOSTED__=1
  define: __STDC_NO_THREADS__=1
  define: __STDC_UTF_16__=1
  define: __STDC_UTF_32__=1
  define: __STDC__=1
  define: __STRICT_ANSI__=1
  define: __UINT16_C_SUFFIX__=
  define: __UINT16_FMTX__="hX"
  define: __UINT16_FMTo__="ho"
  define: __UINT16_FMTu__="hu"
  define: __UINT16_FMTx__="hx"
  define: __UINT16_MAX__=65535
  define: __UINT16_TYPE__=unsigned short
  define: __UINT32_C_SUFFIX__=U
  define: __UINT32_FMTX__="X"
  define: __UINT32_FMTo__="o"
  define: __UINT32_FMTu__="u"
  define: __UINT32_FMTx__="x"
  define: __UINT32_MAX__=4294967295U
  define: __UINT32_TYPE__=unsigned int
  define: __UINT64_C_SUFFIX__=ULL
  define: __UINT64_FMTX__="llX"
  define: __UINT64_FMTo__="llo"
  define: __UINT64_FMTu__="llu"
  define: __UINT64_FMTx__="llx"
  define: __UINT64_MAX__=18446744073709551615ULL
  define: __UINT64_TYPE__=long long unsigned int
  define: __UINT8_C_SUFFIX__=
  define: __UINT8_FMTX__="hhX"
  define: __UINT8_FMTo__="hho"
  define: __UINT8_FMTu__="hhu"
  define: __UINT8_FMTx__="hhx"
  define: __UINT8_MAX__=255
  define: __UINT8_TYPE__=unsigned char
  define: __UINTMAX_C_SUFFIX__=UL
  define: __UINTMAX_FMTX__="lX"
  define: __UINTMAX_FMTo__="lo"
  define: __UINTMAX_FMTu__="lu"
  define: __UINTMAX_FMTx__="lx"
  define: __UINTMAX_MAX__=18446744073709551615UL
  define: __UINTMAX_TYPE__=long unsigned int
  define: __UINTMAX_WIDTH__=64
  define: __UINTPTR_FMTX__="lX"
  define: __UINTPTR_FMTo__="lo"
  define: __UINTPTR_FMTu__="lu"
  define: __UINTPTR_FMTx__="lx"
  define: __UINTPTR_MAX__=18446744073709551615UL
  define: __UINTPTR_TYPE__=long unsigned int
  define: __UINTPTR_WIDTH__=64
  define: __UINT_FAST16_FMTX__="hX"
  define: __UINT_FAST16_FMTo__="ho"
  define: __UINT_FAST16_FMTu__="hu"
  define: __UINT_FAST16_FMTx__="hx"
  define: __UINT_FAST16_MAX__=65535
  define: __UINT_FAST16_TYPE__=unsigned short
  define: __UINT_FAST32_FMTX__="X"
  define: __UINT_FAST32_FMTo__="o"
  define: __UINT_FAST32_FMTu__="u"
  define: __UINT_FAST32_FMTx__="x"
  define: __UINT_FAST32_MAX__=4294967295U
  define: __UINT_FAST32_TYPE__=unsigned int
  define: __UINT_FAST64_FMTX__="llX"
  define: __UINT_FAST64_FMTo__="llo"
  define: __UINT_FAST64_FMTu__="llu"
  define: __UINT_FAST64_FMTx__="llx"
  define: __UINT_FAST64_MAX__=18446744073709551615ULL
  define: __UINT_FAST64_TYPE__=long long unsigned int
  define: __UINT_FAST8_FMTX__="hhX"
  define: __UINT_FAST8_FMTo__="hho"
  define: __UINT_FAST8_FMTu__="hhu"
  define: __UINT_FAST8_FMTx__="hhx"
  define: __UINT_FAST8_MAX__=255
  define: __UINT_FAST8_TYPE__=unsigned char
  define: __UINT_LEAST16_FMTX__="hX"
  define: __UINT_LEAST16_FMTo__="ho"
  define: __UINT_LEAST16_FMTu__="hu"
  define: __UINT_LEAST16_FMTx__="hx"
  define: __UINT_LEAST16_MAX__=65535
  define: __UINT_LEAST16_TYPE__=unsigned short
  define: __UINT_LEAST32_FMTX__="X"
  define: __UINT_LEAST32_FMTo__="o"
  define: __UINT_LEAST32_FMTu__="u"
  define: __UINT_LEAST32_FMTx__="x"
  define: __UINT_LEAST32_MAX__=4294967295U
  define: __UINT_LEAST32_TYPE__=unsigned int
  define: __UINT_LEAST64_FMTX__="llX"
  define: __UINT_LEAST64_FMTo__="llo"
  define: __UINT_LEAST64_FMTu__="llu"
  define: __UINT_LEAST64_FMTx__="llx"
  define: __UINT_LEAST64_MAX__=18446744073709551615ULL
  define: __UINT_LEAST64_TYPE__=long long unsigned int
  define: __UINT_LEAST8_FMTX__="hhX"
  define: __UINT_LEAST8_FMTo__="hho"
  define: __UINT_LEAST8_FMTu__="hhu"
  define: __UINT_LEAST8_FMTx__="hhx"
  define: __UINT_LEAST8_MAX__=255
  define: __UINT_LEAST8_TYPE__=unsigned char
  define: __USER_LABEL_PREFIX__=_
  define: __VERSION__="Apple LLVM 14.0.3 (clang-1403.0.22.14.1)"
  define: __WCHAR_MAX__=2147483647
  define: __WCHAR_TYPE__=int
  define: __WCHAR_WIDTH__=32
  define: __WINT_MAX__=2147483647
  define: __WINT_TYPE__=int
  define: __WINT_WIDTH__=32
  define: __aarch64__=1
  define: __apple_build_version__=14030022
  define: __arm64=1
  define: __arm64__=1
  define: __clang__=1
  define: __clang_literal_encoding__="UTF-8"
  define: __clang_major__=14
  define: __clang_minor__=0
  define: __clang_patchlevel__=3
  define: __clang_version__="14.0.3 (clang-1403.0.22.14.1)"
  define: __clang_wide_literal_encoding__="UTF-32"
  define: __cplusplus=201703L
  define: __llvm__=1
  define: __nonnull=_Nonnull
  define: __null_unspecified=_Null_unspecified
  define: __nullable=_Nullable
  define: __pic__=2
  define: __private_extern__=extern
  define: __strong=
  define: __unsafe_unretained=
  define: __weak=__attribute__((objc_gc(weak)))
  other: --clang
  other: --clang_version=150000
  stdver: c++17
  intelliSenseMode: macos-clang-arm64
  Processing folder (recursive): /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/
  Processing folder (recursive): /Users/seungwon/Workspace/cpp/vscode-clang-predefined-macro-test/
Queueing IntelliSense update for files in translation unit of: /Users/seungwon/Workspace/cpp/vscode-clang-predefined-macro-test/main.cpp
  Discovering files: 3011 file(s) processed
Error squiggle count: 1
Update IntelliSense time (sec): 1.763
LSP: cpptools/getSemanticTokens: file:///Users/seungwon/Workspace/cpp/vscode-clang-predefined-macro-test/main.cpp (id: 16)
LSP: cpptools/getFoldingRanges: file:///Users/seungwon/Workspace/cpp/vscode-clang-predefined-macro-test/main.cpp (id: 17)
  1536 file(s) removed from database
Done discovering files.
Parsing open files...
Populating include completion cache.
Parsing remaining files...
  Parsing: 0 files(s) processed
Done parsing remaining files.
Done parsing open files.

Other Extensions

No response

Additional context

No response

Activity

  1. michelleangela commented on Jul 6, 2023

    @michelleangela
    Contributor

    Seungwon Lee (@Malangcow)
    Thank you for reporting this issue. I've filed an internal bug (1847073) against the IntelliSense engine code base that is shared with Visual Studio.

  2. thecoder138 commented on Feb 29, 2024

    @thecoder138

    Michelle Matias (@michelleangela) wondering if there is any update on this

  3. michelleangela commented on Feb 29, 2024

    @michelleangela
    Contributor
  4. thecoder138 commented on Mar 19, 2024

    @thecoder138
  5. sean-mcmanus commented on Mar 19, 2024

    @sean-mcmanus
    Contributor

    Sharad (@thecoder138) It hasn't been fixed yet. I added a message to the internal issue.

  6. jay1999ke commented on May 16, 2024

    @jay1999ke

    Is there any workaround?

  7. sean-mcmanus commented on May 16, 2024

    @sean-mcmanus
    Contributor

    Jay Patel (@jay1999ke) Not really. You could do something like

    #if __INTELLISENSE__
    #define __FILE_NAME__  __FILE__
    #endif

    and add that to a file specified as a forcedInclude.

  8. mobilinkd commented on Jul 13, 2024

    @mobilinkd

    This issue was reported against Clang. Please note that it affects GCC as well.

  9. lmapii commented on Nov 22, 2024

    @lmapii

    I'm seeing the same issue with GCC:
    Image
    Since I'm using C_Cpp.default.compileCommands there also seems to be no way to silence (only this) warning since the default defines passed, e.g., with C_Cpp.default.defines are not applied to files that are part of the compilation database.

  10. lmapii commented on Mar 3, 2025

    @lmapii

    Sean McManus (@sean-mcmanus) are there any plans to address this?

  11. sean-mcmanus commented on Mar 3, 2025

    @sean-mcmanus
    Contributor

    martin (@lmapii) The issue is still open. I've ping'd the team to check (my last ping was a year ago).

  12. sean-mcmanus commented on Mar 3, 2025

    @sean-mcmanus
    Contributor

    martin (@lmapii) It looks like this ping worked, i.e. it looks like it's "moving forward", but we don't have an ETA on a fix.

  13. lmapii commented on Mar 4, 2025

    @lmapii

    Sean McManus (@sean-mcmanus) that's good news, thank you!

  14. added
    fixedCheck the Milestone for the release in which the fix is or will be available.
    on Aug 15, 2025
  15. sean-mcmanus commented on Aug 21, 2025

    @sean-mcmanus
    Contributor

    However, this change causes a crash in some scenarios: #13866 . We should have a fix out later today in 1.27.2.

  16. sean-mcmanus commented on Aug 22, 2025

    @sean-mcmanus
    Contributor

    The crash should be fixed now (it could randomly crash when __BASE_NAME__ was parsed). With https://github.com/microsoft/vscode-cpptools/releases/tag/v1.27.2

  17. lmapii commented on Aug 22, 2025

    @lmapii

    I installed 1.27.2 and it's looking good for what wasn't working for me!

  18. locked and limited conversation to collaborators on Nov 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Language ServiceVisual StudioInherited from Visual StudiobugfixedCheck the Milestone for the release in which the fix is or will be available.

    Type

    Projects

    • Status
      Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions