Vscode-cpptools: Random "cannot open source file NNNN.h" errors break intellisense

Created on 13 Nov 2019  路  5Comments  路  Source: microsoft/vscode-cpptools

Type: LanguageService

Describe the bug

From time to time, the extension will be unable to find a library and will disable intellisense for the whole translation unit. The path to that library, and any dependency of that library, is set in the settings file, as intellisense works some times. I can ctrl+click on it and the "missing" file will open. Also, given that the path for those files is in the browse section, when they are missing, the bulb icon will suggest including its path, but in this case, it will simply say that it can't find it.

Reseting the database won't fix the issue.

Only restarting VS code solves the issue.

Another common issue is that once a header as been marked as "cannot find", commenting it doesn't remove the issue, the comment is squiggled and the error is still shown there. Deleting the offending line will reduce the squiggle to one char width, and will stay there whatever the new line contains (empty spaces or other pieces of code) (included a gif with this behaviour too)

  • OS and Version: Windows 10 Pro 1903
  • VS Code Version: 1.40.0 user.
  • C/C++ Extension Version: 0.26.1, but I've been facing this for months now.
  • Other extensions you installed (and if the issue persists after disabling them):

    • Remote development, TODO Highlight, Python, Markdown Preview Enhanced, Markdown Lint, Gitlense

    • Yes, the issue persists with them disabled.

  • A clear and concise description of what the bug is.

To Reproduce


I have a workspace saved with four folders added to them. Two of them are code folders that require different c_cpp_settings (my main development folder and my test foder). The others are documentation.
Both c_cpp_settings files are correctly set to include all the relevant libraries (and any dependencies for these libraries. I checked this because the project works after a reset of VS Code.

Expected behavior
Once a project is correctly set up, the extension should not complain about missing libraries

Screenshots

I attach a gif. Open it in a new tab to see it at full resolution as the text is too small in this view.

Error 1

Here's another gif showing how the error squiggles stay after commenting the offending line. A normal error would disappear in this case.

Error 2

Additional context

  • Debug log:
initialized
workspace/didChangeConfiguration
IntelliSense Engine = Default.
Autocomplete is enabled.
Enhanced Colorization is enabled.
Error squiggles are enabled if all header dependencies are resolved.
File exclude: **/.git
File exclude: **/.svn
File exclude: **/.hg
File exclude: **/CVS
File exclude: **/.DS_Store
File exclude: **/build/artifacts/test
File exclude: **/build/gcov
File exclude: **/build/logs
File exclude: **/build/temp
File exclude: **/build/test/[cdpr]*
File exclude: **/out
File exclude: **/.vscode
Search exclude: **/node_modules
Search exclude: **/bower_components
Search exclude: **/.vscode
Attempting to get defaults from compiler found on the machine: ''
Attempting to get defaults from compiler found on the machine: '/usr/bin/gcc'
Failed to spawn process. Error: 2 (The system cannot find the file specified.)
  WSL compiler detected
cpptools/queryCompilerDefaults: 1
Attempting to get defaults from compiler found on the machine: ''
Attempting to get defaults from compiler found on the machine: '/usr/bin/gcc'
Failed to spawn process. Error: 2 (The system cannot find the file specified.)
gcc: error trying to exec 'cc1plus': execvp: No such file or directory

cpptools/activeDocumentChange
cpptools/resumeParsing
cpptools/textEditorSelectionChange
textDocument/didOpen
cpptools/getCodeActions: 2
cpptools/getDocumentSymbols: 3
cpptools/didChangeFolderSettings
Attempting to get defaults from compiler in "compilerPath" property: 'C:/msys64/mingw64/bin/gcc.exe'
Code browsing service initialized
Attempting to get defaults from compiler in "compilerPath" property: 'C:/msys64/mingw64/bin/gcc.exe'
  Unable to retrieve file system information for C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/8.3.0/include/ssp. error = -1
  Folder: C:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/9.2.0/INCLUDE/ will be indexed
  Folder: C:/MSYS64/MINGW64/INCLUDE/ will be indexed
  Folder: C:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/9.2.0/INCLUDE-FIXED/ will be indexed
  Folder: C:/MSYS64/MINGW64/X86_64-W64-MINGW32/INCLUDE/ will be indexed
  Folder: C:/USERS/JOEL/WORKSPACE/HELIX/TEST/VENDOR/CEEDLING/VENDOR/UNITY/SRC/ will be indexed
  Folder: C:/USERS/JOEL/WORKSPACE/HELIX/TEST/VENDOR/CEEDLING/VENDOR/CMOCK/SRC/ will be indexed
  Folder: C:/USERS/JOEL/WORKSPACE/HELIX/TEST/BUILD/TEST/MOCKS/ will be indexed
  Folder: C:/USERS/JOEL/WORKSPACE/HELIX/SRC/HELIXV2/ will be indexed
  Folder: C:/USERS/JOEL/WORKSPACE/HELIX/LIB/LITTLEFS/ will be indexed
  Folder: C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PROTOCOL/BLUETOOTH_2.4/BLE_STACK/INC/ will be indexed
  Folder: C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/EMDRV/ will be indexed
  Folder: C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/EMLIB/ will be indexed
  Folder: C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/DEVICE/SILICONLABS/EFR32BG1P/INCLUDE/ will be indexed
  Folder: C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/CMSIS/INCLUDE/ will be indexed
Populate include completion cache.
textDocument/didOpen
cpptools/getDocumentSymbols: 3
cpptools/getDocumentSymbols
Discovering files...
  Processing folder (recursive): C:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/9.2.0/INCLUDE/
  Processing folder (recursive): C:/MSYS64/MINGW64/INCLUDE/
idle loop: reparsing the active document
Checking for syntax errors: file:///c%3A/Users/Joel/Workspace/Helix/test/test/states/test_awaiting_transfer.c
sending compilation args for C:\USERS\JOEL\WORKSPACE\HELIX\TEST\TEST\STATES\TEST_AWAITING_TRANSFER.C
  include: C:\USERS\JOEL\WORKSPACE\HELIX\SRC\HELIXV2
  include: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\VENDOR\CEEDLING\VENDOR\UNITY\SRC
  include: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\BUILD\TEST\MOCKS
  include: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\VENDOR\CEEDLING\VENDOR\CMOCK\SRC
  include: C:\USERS\JOEL\WORKSPACE\HELIX\LIB\LITTLEFS
  include: C:\USERS\JOEL\WORKSPACE\HELIX\SRC\HELIXV2\STATES
  include: C:\MSYS64\MINGW64\LIB\GCC\X86_64-W64-MINGW32\9.2.0\INCLUDE
  include: C:\MSYS64\MINGW64\INCLUDE
  include: C:\MSYS64\MINGW64\LIB\GCC\X86_64-W64-MINGW32\9.2.0\INCLUDE-FIXED
  include: C:\MSYS64\MINGW64\X86_64-W64-MINGW32\INCLUDE
  define: __STDC__=1
  define: __STDC_VERSION__=199901L
  define: __STDC_HOSTED__=1
  define: __GNUC__=9
  define: __GNUC_MINOR__=2
  define: __GNUC_PATCHLEVEL__=0
  define: __VERSION__="9.2.0"
  define: __ATOMIC_RELAXED=0
  define: __ATOMIC_SEQ_CST=5
  define: __ATOMIC_ACQUIRE=2
  define: __ATOMIC_RELEASE=3
  define: __ATOMIC_ACQ_REL=4
  define: __ATOMIC_CONSUME=1
  define: __pic__=1
  define: __PIC__=1
  define: __FINITE_MATH_ONLY__=0
  define: __SIZEOF_INT__=4
  define: __SIZEOF_LONG__=4
  define: __SIZEOF_LONG_LONG__=8
  define: __SIZEOF_SHORT__=2
  define: __SIZEOF_FLOAT__=4
  define: __SIZEOF_DOUBLE__=8
  define: __SIZEOF_LONG_DOUBLE__=16
  define: __SIZEOF_SIZE_T__=8
  define: __CHAR_BIT__=8
  define: __BIGGEST_ALIGNMENT__=16
  define: __ORDER_LITTLE_ENDIAN__=1234
  define: __ORDER_BIG_ENDIAN__=4321
  define: __ORDER_PDP_ENDIAN__=3412
  define: __BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__
  define: __FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__
  define: __SIZEOF_POINTER__=8
  define: __SIZE_TYPE__=long long unsigned int
  define: __PTRDIFF_TYPE__=long long int
  define: __WCHAR_TYPE__=short unsigned int
  define: __WINT_TYPE__=short unsigned int
  define: __INTMAX_TYPE__=long long int
  define: __UINTMAX_TYPE__=long long unsigned int
  define: __CHAR16_TYPE__=short unsigned int
  define: __CHAR32_TYPE__=unsigned int
  define: __SIG_ATOMIC_TYPE__=int
  define: __INT8_TYPE__=signed char
  define: __INT16_TYPE__=short int
  define: __INT32_TYPE__=int
  define: __INT64_TYPE__=long long int
  define: __UINT8_TYPE__=unsigned char
  define: __UINT16_TYPE__=short unsigned int
  define: __UINT32_TYPE__=unsigned int
  define: __UINT64_TYPE__=long long unsigned int
  define: __INT_LEAST8_TYPE__=signed char
  define: __INT_LEAST16_TYPE__=short int
  define: __INT_LEAST32_TYPE__=int
  define: __INT_LEAST64_TYPE__=long long int
  define: __UINT_LEAST8_TYPE__=unsigned char
  define: __UINT_LEAST16_TYPE__=short unsigned int
  define: __UINT_LEAST32_TYPE__=unsigned int
  define: __UINT_LEAST64_TYPE__=long long unsigned int
  define: __INT_FAST8_TYPE__=signed char
  define: __INT_FAST16_TYPE__=short int
  define: __INT_FAST32_TYPE__=int
  define: __INT_FAST64_TYPE__=long long int
  define: __UINT_FAST8_TYPE__=unsigned char
  define: __UINT_FAST16_TYPE__=short unsigned int
  define: __UINT_FAST32_TYPE__=unsigned int
  define: __UINT_FAST64_TYPE__=long long unsigned int
  define: __INTPTR_TYPE__=long long int
  define: __UINTPTR_TYPE__=long long unsigned int
  define: __GXX_ABI_VERSION=1013
  define: __SCHAR_MAX__=0x7f
  define: __SHRT_MAX__=0x7fff
  define: __INT_MAX__=0x7fffffff
  define: __LONG_MAX__=0x7fffffffL
  define: __LONG_LONG_MAX__=0x7fffffffffffffffLL
  define: __WCHAR_MAX__=0xffff
  define: __WCHAR_MIN__=0
  define: __WINT_MAX__=0xffff
  define: __WINT_MIN__=0
  define: __PTRDIFF_MAX__=0x7fffffffffffffffLL
  define: __SIZE_MAX__=0xffffffffffffffffULL
  define: __SCHAR_WIDTH__=8
  define: __SHRT_WIDTH__=16
  define: __INT_WIDTH__=32
  define: __LONG_WIDTH__=32
  define: __LONG_LONG_WIDTH__=64
  define: __WCHAR_WIDTH__=16
  define: __WINT_WIDTH__=16
  define: __PTRDIFF_WIDTH__=64
  define: __SIZE_WIDTH__=64
  define: __INTMAX_MAX__=0x7fffffffffffffffLL
  define: __INTMAX_C(c)=c ## LL
  define: __UINTMAX_MAX__=0xffffffffffffffffULL
  define: __UINTMAX_C(c)=c ## ULL
  define: __INTMAX_WIDTH__=64
  define: __SIG_ATOMIC_MAX__=0x7fffffff
  define: __SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)
  define: __SIG_ATOMIC_WIDTH__=32
  define: __INT8_MAX__=0x7f
  define: __INT16_MAX__=0x7fff
  define: __INT32_MAX__=0x7fffffff
  define: __INT64_MAX__=0x7fffffffffffffffLL
  define: __UINT8_MAX__=0xff
  define: __UINT16_MAX__=0xffff
  define: __UINT32_MAX__=0xffffffffU
  define: __UINT64_MAX__=0xffffffffffffffffULL
  define: __INT_LEAST8_MAX__=0x7f
  define: __INT8_C(c)=c
  define: __INT_LEAST8_WIDTH__=8
  define: __INT_LEAST16_MAX__=0x7fff
  define: __INT16_C(c)=c
  define: __INT_LEAST16_WIDTH__=16
  define: __INT_LEAST32_MAX__=0x7fffffff
  define: __INT32_C(c)=c
  define: __INT_LEAST32_WIDTH__=32
  define: __INT_LEAST64_MAX__=0x7fffffffffffffffLL
  define: __INT64_C(c)=c ## LL
  define: __INT_LEAST64_WIDTH__=64
  define: __UINT_LEAST8_MAX__=0xff
  define: __UINT8_C(c)=c
  define: __UINT_LEAST16_MAX__=0xffff
  define: __UINT16_C(c)=c
  define: __UINT_LEAST32_MAX__=0xffffffffU
  define: __UINT32_C(c)=c ## U
  define: __UINT_LEAST64_MAX__=0xffffffffffffffffULL
  define: __UINT64_C(c)=c ## ULL
  define: __INT_FAST8_MAX__=0x7f
  define: __INT_FAST8_WIDTH__=8
  define: __INT_FAST16_MAX__=0x7fff
  define: __INT_FAST16_WIDTH__=16
  define: __INT_FAST32_MAX__=0x7fffffff
  define: __INT_FAST32_WIDTH__=32
  define: __INT_FAST64_MAX__=0x7fffffffffffffffLL
  define: __INT_FAST64_WIDTH__=64
  define: __UINT_FAST8_MAX__=0xff
  define: __UINT_FAST16_MAX__=0xffff
  define: __UINT_FAST32_MAX__=0xffffffffU
  define: __UINT_FAST64_MAX__=0xffffffffffffffffULL
  define: __INTPTR_MAX__=0x7fffffffffffffffLL
  define: __INTPTR_WIDTH__=64
  define: __UINTPTR_MAX__=0xffffffffffffffffULL
  define: __GCC_IEC_559=2
  define: __GCC_IEC_559_COMPLEX=2
  define: __FLT_EVAL_METHOD__=0
  define: __FLT_EVAL_METHOD_TS_18661_3__=0
  define: __DEC_EVAL_METHOD__=2
  define: __FLT_RADIX__=2
  define: __FLT_MANT_DIG__=24
  define: __FLT_DIG__=6
  define: __FLT_MIN_EXP__=(-125)
  define: __FLT_MIN_10_EXP__=(-37)
  define: __FLT_MAX_EXP__=128
  define: __FLT_MAX_10_EXP__=38
  define: __FLT_DECIMAL_DIG__=9
  define: __FLT_MAX__=3.40282346638528859811704183484516925e+38F
  define: __FLT_MIN__=1.17549435082228750796873653722224568e-38F
  define: __FLT_EPSILON__=1.19209289550781250000000000000000000e-7F
  define: __FLT_DENORM_MIN__=1.40129846432481707092372958328991613e-45F
  define: __FLT_HAS_DENORM__=1
  define: __FLT_HAS_INFINITY__=1
  define: __FLT_HAS_QUIET_NAN__=1
  define: __DBL_MANT_DIG__=53
  define: __DBL_DIG__=15
  define: __DBL_MIN_EXP__=(-1021)
  define: __DBL_MIN_10_EXP__=(-307)
  define: __DBL_MAX_EXP__=1024
  define: __DBL_MAX_10_EXP__=308
  define: __DBL_DECIMAL_DIG__=17
  define: __DBL_MAX__=((double)1.79769313486231570814527423731704357e+308L)
  define: __DBL_MIN__=((double)2.22507385850720138309023271733240406e-308L)
  define: __DBL_EPSILON__=((double)2.22044604925031308084726333618164062e-16L)
  define: __DBL_DENORM_MIN__=((double)4.94065645841246544176568792868221372e-324L)
  define: __DBL_HAS_DENORM__=1
  define: __DBL_HAS_INFINITY__=1
  define: __DBL_HAS_QUIET_NAN__=1
  define: __LDBL_MANT_DIG__=64
  define: __LDBL_DIG__=18
  define: __LDBL_MIN_EXP__=(-16381)
  define: __LDBL_MIN_10_EXP__=(-4931)
  define: __LDBL_MAX_EXP__=16384
  define: __LDBL_MAX_10_EXP__=4932
  define: __DECIMAL_DIG__=21
  define: __LDBL_DECIMAL_DIG__=21
  define: __LDBL_MAX__=1.18973149535723176502126385303097021e+4932L
  define: __LDBL_MIN__=3.36210314311209350626267781732175260e-4932L
  define: __LDBL_EPSILON__=1.08420217248550443400745280086994171e-19L
  define: __LDBL_DENORM_MIN__=3.64519953188247460252840593361941982e-4951L
  define: __LDBL_HAS_DENORM__=1
  define: __LDBL_HAS_INFINITY__=1
  define: __LDBL_HAS_QUIET_NAN__=1
  define: __FLT32_MANT_DIG__=24
  define: __FLT32_DIG__=6
  define: __FLT32_MIN_EXP__=(-125)
  define: __FLT32_MIN_10_EXP__=(-37)
  define: __FLT32_MAX_EXP__=128
  define: __FLT32_MAX_10_EXP__=38
  define: __FLT32_DECIMAL_DIG__=9
  define: __FLT32_MAX__=3.40282346638528859811704183484516925e+38F32
  define: __FLT32_MIN__=1.17549435082228750796873653722224568e-38F32
  define: __FLT32_EPSILON__=1.19209289550781250000000000000000000e-7F32
  define: __FLT32_DENORM_MIN__=1.40129846432481707092372958328991613e-45F32
  define: __FLT32_HAS_DENORM__=1
  define: __FLT32_HAS_INFINITY__=1
  define: __FLT32_HAS_QUIET_NAN__=1
  define: __FLT64_MANT_DIG__=53
  define: __FLT64_DIG__=15
  define: __FLT64_MIN_EXP__=(-1021)
  define: __FLT64_MIN_10_EXP__=(-307)
  define: __FLT64_MAX_EXP__=1024
  define: __FLT64_MAX_10_EXP__=308
  define: __FLT64_DECIMAL_DIG__=17
  define: __FLT64_MAX__=1.79769313486231570814527423731704357e+308F64
  define: __FLT64_MIN__=2.22507385850720138309023271733240406e-308F64
  define: __FLT64_EPSILON__=2.22044604925031308084726333618164062e-16F64
  define: __FLT64_DENORM_MIN__=4.94065645841246544176568792868221372e-324F64
  define: __FLT64_HAS_DENORM__=1
  define: __FLT64_HAS_INFINITY__=1
  define: __FLT64_HAS_QUIET_NAN__=1
  define: __FLT128_MANT_DIG__=113
  define: __FLT128_DIG__=33
  define: __FLT128_MIN_EXP__=(-16381)
  define: __FLT128_MIN_10_EXP__=(-4931)
  define: __FLT128_MAX_EXP__=16384
  define: __FLT128_MAX_10_EXP__=4932
  define: __FLT128_DECIMAL_DIG__=36
  define: __FLT128_MAX__=1.18973149535723176508575932662800702e+4932F128
  define: __FLT128_MIN__=3.36210314311209350626267781732175260e-4932F128
  define: __FLT128_EPSILON__=1.92592994438723585305597794258492732e-34F128
  define: __FLT128_DENORM_MIN__=6.47517511943802511092443895822764655e-4966F128
  define: __FLT128_HAS_DENORM__=1
  define: __FLT128_HAS_INFINITY__=1
  define: __FLT128_HAS_QUIET_NAN__=1
  define: __FLT32X_MANT_DIG__=53
  define: __FLT32X_DIG__=15
  define: __FLT32X_MIN_EXP__=(-1021)
  define: __FLT32X_MIN_10_EXP__=(-307)
  define: __FLT32X_MAX_EXP__=1024
  define: __FLT32X_MAX_10_EXP__=308
  define: __FLT32X_DECIMAL_DIG__=17
  define: __FLT32X_MAX__=1.79769313486231570814527423731704357e+308F32x
  define: __FLT32X_MIN__=2.22507385850720138309023271733240406e-308F32x
  define: __FLT32X_EPSILON__=2.22044604925031308084726333618164062e-16F32x
  define: __FLT32X_DENORM_MIN__=4.94065645841246544176568792868221372e-324F32x
  define: __FLT32X_HAS_DENORM__=1
  define: __FLT32X_HAS_INFINITY__=1
  define: __FLT32X_HAS_QUIET_NAN__=1
  define: __FLT64X_MANT_DIG__=64
  define: __FLT64X_DIG__=18
  define: __FLT64X_MIN_EXP__=(-16381)
  define: __FLT64X_MIN_10_EXP__=(-4931)
  define: __FLT64X_MAX_EXP__=16384
  define: __FLT64X_MAX_10_EXP__=4932
  define: __FLT64X_DECIMAL_DIG__=21
  define: __FLT64X_MAX__=1.18973149535723176502126385303097021e+4932F64x
  define: __FLT64X_MIN__=3.36210314311209350626267781732175260e-4932F64x
  define: __FLT64X_EPSILON__=1.08420217248550443400745280086994171e-19F64x
  define: __FLT64X_DENORM_MIN__=3.64519953188247460252840593361941982e-4951F64x
  define: __FLT64X_HAS_DENORM__=1
  define: __FLT64X_HAS_INFINITY__=1
  define: __FLT64X_HAS_QUIET_NAN__=1
  define: __DEC32_MANT_DIG__=7
  define: __DEC32_MIN_EXP__=(-94)
  define: __DEC32_MAX_EXP__=97
  define: __DEC32_MIN__=1E-95DF
  define: __DEC32_MAX__=9.999999E96DF
  define: __DEC32_EPSILON__=1E-6DF
  define: __DEC32_SUBNORMAL_MIN__=0.000001E-95DF
  define: __DEC64_MANT_DIG__=16
  define: __DEC64_MIN_EXP__=(-382)
  define: __DEC64_MAX_EXP__=385
  define: __DEC64_MIN__=1E-383DD
  define: __DEC64_MAX__=9.999999999999999E384DD
  define: __DEC64_EPSILON__=1E-15DD
  define: __DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD
  define: __DEC128_MANT_DIG__=34
  define: __DEC128_MIN_EXP__=(-6142)
  define: __DEC128_MAX_EXP__=6145
  define: __DEC128_MIN__=1E-6143DL
  define: __DEC128_MAX__=9.999999999999999999999999999999999E6144DL
  define: __DEC128_EPSILON__=1E-33DL
  define: __DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL
  define: __REGISTER_PREFIX__=
  define: __USER_LABEL_PREFIX__=
  define: __GNUC_STDC_INLINE__=1
  define: __NO_INLINE__=1
  define: __STRICT_ANSI__=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: __GCC_ATOMIC_BOOL_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR16_T_LOCK_FREE=2
  define: __GCC_ATOMIC_CHAR32_T_LOCK_FREE=2
  define: __GCC_ATOMIC_WCHAR_T_LOCK_FREE=2
  define: __GCC_ATOMIC_SHORT_LOCK_FREE=2
  define: __GCC_ATOMIC_INT_LOCK_FREE=2
  define: __GCC_ATOMIC_LONG_LOCK_FREE=2
  define: __GCC_ATOMIC_LLONG_LOCK_FREE=2
  define: __GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1
  define: __GCC_ATOMIC_POINTER_LOCK_FREE=2
  define: __HAVE_SPECULATION_SAFE_VALUE=1
  define: __PRAGMA_REDEFINE_EXTNAME=1
  define: __SIZEOF_INT128__=16
  define: __SIZEOF_WCHAR_T__=2
  define: __SIZEOF_WINT_T__=2
  define: __SIZEOF_PTRDIFF_T__=8
  define: __amd64=1
  define: __amd64__=1
  define: __x86_64=1
  define: __x86_64__=1
  define: __SIZEOF_FLOAT80__=16
  define: __SIZEOF_FLOAT128__=16
  define: __ATOMIC_HLE_ACQUIRE=65536
  define: __ATOMIC_HLE_RELEASE=131072
  define: __GCC_ASM_FLAG_OUTPUTS__=1
  define: __k8=1
  define: __k8__=1
  define: __code_model_medium__=1
  define: __MMX__=1
  define: __SSE__=1
  define: __SSE2__=1
  define: __FXSR__=1
  define: __SSE_MATH__=1
  define: __SSE2_MATH__=1
  define: __SEG_FS=1
  define: __SEG_GS=1
  define: __SEH__=1
  define: __stdcall=__attribute__((__stdcall__))
  define: __fastcall=__attribute__((__fastcall__))
  define: __thiscall=__attribute__((__thiscall__))
  define: __cdecl=__attribute__((__cdecl__))
  define: __GXX_MERGED_TYPEINFO_NAMES=0
  define: __GXX_TYPEINFO_EQUALITY_INLINE=0
  define: __MSVCRT__=1
  define: __MINGW32__=1
  define: _WIN32=1
  define: __WIN32=1
  define: __WIN32__=1
  define: __WINNT=1
  define: __WINNT__=1
  define: _INTEGRAL_MAX_BITS=64
  define: __MINGW64__=1
  define: __WIN64=1
  define: __WIN64__=1
  define: _WIN64=1
  define: __declspec(x)=__attribute__((x))
  define: __DECIMAL_BID_FORMAT__=1
  define: _REENTRANT=1
  define: __NO_SYSTEM_INIT=1
  define: EFR32BG1P233F256GM48=1
  define: SILABS_AF_USE_HWCONF=1
  define: HAL_CONFIG=1
  define: TEST=1
  other: --gcc
  other: --gnu_version=90200
  stdver: c99
  intelliSenseMode: gcc-x64
Queueing IntelliSense update for files in translation unit of: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\TEST\STATES\TEST_AWAITING_TRANSFER.C
cpptools/getCodeActions: 4
  Processing folder (recursive): C:/MSYS64/MINGW64/LIB/GCC/X86_64-W64-MINGW32/9.2.0/INCLUDE-FIXED/
  Processing folder (recursive): C:/MSYS64/MINGW64/X86_64-W64-MINGW32/INCLUDE/
  Processing folder (recursive): C:/USERS/JOEL/WORKSPACE/HELIX/TEST/VENDOR/CEEDLING/VENDOR/UNITY/SRC/
  Processing folder (recursive): C:/USERS/JOEL/WORKSPACE/HELIX/TEST/VENDOR/CEEDLING/VENDOR/CMOCK/SRC/
  Processing folder (recursive): C:/USERS/JOEL/WORKSPACE/HELIX/TEST/BUILD/TEST/MOCKS/
  Processing folder (recursive): C:/USERS/JOEL/WORKSPACE/HELIX/SRC/HELIXV2/
  Processing folder (recursive): C:/USERS/JOEL/WORKSPACE/HELIX/LIB/LITTLEFS/
  Processing folder (recursive): C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PROTOCOL/BLUETOOTH_2.4/BLE_STACK/INC/
  Processing folder (recursive): C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/EMDRV/
  Processing folder (recursive): C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/EMLIB/
  Processing folder (recursive): C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/DEVICE/SILICONLABS/EFR32BG1P/INCLUDE/
  Processing folder (recursive): C:/SILICONLABS/SIMPLICITYSTUDIO/V4/DEVELOPER/SDKS/GECKO_SDK_SUITE/V1.1/PLATFORM/CMSIS/INCLUDE/
  Discovering files: 6115 file(s) processed
Error squiggle count: 0
  1 file(s) removed from database
Done discovering files.
Parsing open files...
Parsing remaining files...
  Parsing: 0 files(s) processed
Done parsing remaining files.
  tag parsing file: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\TEST\STATES\TEST_AWAITING_TRANSFER.C
Done parsing open files.
cpptools/getCodeActions: 5
Database safe to open
cpptools/activeDocumentChange
cpptools/textEditorSelectionChange
cpptools/textEditorSelectionChange
cpptools/getCodeActions: 6
textDocument/hover: 7
Request canceled: 7
textDocument/hover: 8
cpptools/getCodeActions: 9
idle loop: reparsing the active document
Checking for syntax errors: file:///c%3A/Users/Joel/Workspace/Helix/test/test/states/test_awaiting_transfer.c
Queueing IntelliSense update for files in translation unit of: C:\USERS\JOEL\WORKSPACE\HELIX\TEST\TEST\STATES\TEST_AWAITING_TRANSFER.C
Error squiggle count: 0
cpptools/textEditorSelectionChange
cpptools/getCodeActions: 10
textDocument/hover: 11
cpptools/textEditorSelectionChange
cpptools/getCodeActions: 12
textDocument/hover: 13
textDocument/hover: 14
textDocument/hover: 15
cpptools/getCodeActions: 16
textDocument/hover: 17
textDocument/hover: 18
textDocument/hover: 19
textDocument/hover: 20
Multiroot Language Service bug fixed (release pending)

Most helpful comment

Our latest Insiders release has a new multi-root implementation (which fixes this bug): https://github.com/microsoft/vscode-cpptools/releases/tag/0.27.0-insiders. Please let us know if you find any multi-root-related bugs or regressions so we can prioritize fixing those for 0.27.0.

All 5 comments

@sean-mcmanus, is this a multi-root issue?

The repro as described is multi-root, so the root cause could be due to that.

@joel-felcana Are you able to repo the issue with only 1 workspace folder? We're re-writing our multi-root implementation which could fix this.

I opened the project as a single folder and I couldn't replicate it. As I said the issue doesn't happen 100% of the times, so I don't know if it's that I can't make it happen with a single folder, or that it doesn't happen with a single folder, but I would say that you are right and it seems that only happens in multiroot. It's nice to hear that you are working on it.

Thanks!

As the issue doesn't happen all the time, it's difficult to say with complete certainty, but I tried on a single folder project, and I couldn't reproduce.

Waiting eagerly for that fix then!

Thanks for your work! Cheers,

Our latest Insiders release has a new multi-root implementation (which fixes this bug): https://github.com/microsoft/vscode-cpptools/releases/tag/0.27.0-insiders. Please let us know if you find any multi-root-related bugs or regressions so we can prioritize fixing those for 0.27.0.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

CDitzel picture CDitzel  路  3Comments

igorPhelype picture igorPhelype  路  3Comments

jheinzel picture jheinzel  路  3Comments

arl picture arl  路  3Comments

montery8 picture montery8  路  3Comments