Closed Colengms closed 3 years ago
@athisun We don't seem to be repro'ing this issue for the majority of Mac users, so information about your environment, configuration, etc., might help us understand what is happening. What version of macOS you are using? What version of VS Code are you using? (Perhaps start to create a new GitHub issue, so you can see the information we request there). Does the issue repro immediately after installation with no folder open? Does the issue repro with no files already open in VS Code on launch? Are there any C_Cpp
related setting in your settings.json
, and does it repro if they are all removed? Does the issue repro with an extremely simple example, such as a folder containing just a single cpp file?
the logging level was remembered through un/re-installs
Are you saying that the value was already present in your settings.json
? That is a VS Code setting file, not specific to the C/C++ Extension, so would remain unchanged when un/re-installing an extension.
Any raw data you can give us, such as the contents of your settings.json
file(s), the contents of relevant output channels, the content of console output when Developer Tools enabled, or even a screen capture of the repro, would help us, as we might notice something you may not have considered worth mentioning.
@Colengms
Does the issue repro immediately after installation with no folder open?
With nothing open in vscode (no workspace, no folders, no files), installing the extension has no noticeable change. No cpptools output, no crashing extension host.
Quitting vscode (ā+Q) and reopening the empty vscode, the C/C++ channel logs the following, but no errors or warnings.
deleting: /Users/acarr/.vscode/extensions/ms-vscode.cpptools-1.1.1/debugAdapters/lldb/bin/debugserver
deleting: /Users/acarr/.vscode/extensions/ms-vscode.cpptools-1.1.1/debugAdapters/lldb/bin/lldb-mi
deleting: /Users/acarr/.vscode/extensions/ms-vscode.cpptools-1.1.1/debugAdapters/lldb/bin/lldb-argdumper
deleting: /Users/acarr/.vscode/extensions/ms-vscode.cpptools-1.1.1/debugAdapters/lldb/bin/lldb-launcher
Finished installing dependencies
Opening a project folder (with h, hpp, c, and cpp files only contained in subdirectories) reloads the vscode window, and a popup appears stating "Extensions have been modified on disk. Please reload the window.". It's unclear whether this means the cpptools extension. The C/C++ channel has updated to only include:
Finished installing dependencies
Reloading the window with no file open, only the project folder, does not reproduce the issue. Opening a hpp file works correctly and the C/C++ channel outputs:
Restarting vscode with the hpp file open works as intended.
However, opening a workspace containing multiple projects, most with their own .vscode directories, loses C/C++ language support, there are no squigles, loading or saving files does not trigger a database icon on the right of the status bar, the C/C++ output channel is now missing. Eventually a popup appears stating "Extension host terminated unexpectedly."
This is the contents of my c_cpp_properties.json:
{
"configurations": [
{
"name": "!!! WARNING !!! AUTO-GENERATED FILE, PLEASE DO NOT MODIFY IT AND USE https://docs.platformio.org/page/projectconf/section_env_build.html#build-flags"
},
{
"name": "Mac",
"macFrameworkPath": [],
"includePath": [
"/Users/acarr/Projects/Prohelion/PHLN3116-BattManTranslator/include",
"/Users/acarr/Projects/Prohelion/PHLN3116-BattManTranslator/src",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/CMSIS/Include",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/CMSIS/Device/ST/STM32L4xx/Include",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/STM32L4xx_HAL_Driver/Inc",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/Common",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/STM32L4xx_Nucleo_32",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm303dlhc",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/m24sr",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/l3gd20",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mfxstm32l152",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm303c",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ov9655",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm6dsl",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/cs43l22",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/st7789h2",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft6x06",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/n25q128a",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/rk043fn48h",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/st7735",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/hts221",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/iss66wvh8m8",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/stmpe811",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/wm8994",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/hx8347g",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lps22hb",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/n25q256a",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/stmpe1600",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft3x67",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft5336",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lis3mdl",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mx25r6435f",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ls016b8uy",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/cs42l51",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mx25lm51245g",
"/Users/acarr/.platformio/packages/tool-unity",
""
],
"browse": {
"limitSymbolsToIncludedHeaders": true,
"path": [
"/Users/acarr/Projects/Prohelion/PHLN3116-BattManTranslator/include",
"/Users/acarr/Projects/Prohelion/PHLN3116-BattManTranslator/src",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/CMSIS/Include",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/CMSIS/Device/ST/STM32L4xx/Include",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/STM32L4xx_HAL_Driver/Inc",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/Common",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/STM32L4xx_Nucleo_32",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm303dlhc",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/m24sr",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/l3gd20",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mfxstm32l152",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm303c",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ov9655",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lsm6dsl",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/cs43l22",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/st7789h2",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft6x06",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/n25q128a",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/rk043fn48h",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/st7735",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/hts221",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/iss66wvh8m8",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/stmpe811",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/wm8994",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/hx8347g",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lps22hb",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/n25q256a",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/stmpe1600",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft3x67",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ft5336",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/lis3mdl",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mx25r6435f",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/ls016b8uy",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/cs42l51",
"/Users/acarr/.platformio/packages/framework-stm32cube/l4/Drivers/BSP/Components/mx25lm51245g",
"/Users/acarr/.platformio/packages/tool-unity",
""
]
},
"defines": [
"PLATFORMIO=50002",
"STM32L432xx",
"L4",
"RECEIVER",
"USE_HAL_DRIVER",
"F_CPU=80000000L",
""
],
"intelliSenseMode": "clang-x64",
"compilerPath": "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi@1.70201.0/bin/arm-none-eabi-gcc",
"compilerArgs": [
"-mthumb",
"-mcpu=cortex-m4",
""
]
}
],
"version": 4
}
Deleting the .vscode directory for the topmost project in the workspace, then quitting and restarting vscode does not regenerate the .vscode directory. The issue is reproduced: no language support, no C/C++ output, no cpptools output, eventual extension host crash popup. Reloading the extension host results in cpptools outputting [Error - 1:20:16 PM] Connection to server got closed. Server will not be restarted.
Does the issue repro with no files already open in VS Code on launch?
No, the extension seems to work normally.
Are there any C_Cpp related setting in your settings.json, and does it repro if they are all removed?
The only C_Cpp settings in my settings.json are:
"C_Cpp.updateChannel": "Insiders",
"C_Cpp.loggingLevel": "Debug",
Removing them and restarting vscode makes no change. With the workspace open, cpptools outputs [Error - 1:09:37 PM] Connection to server got closed. Server will not be restarted.
, with nothing open, no error.
Does the issue repro with an extremely simple example, such as a folder containing just a single cpp file?
No, the extension seems to work normally.
Screenshot:
Hi @athisun . Could you check if the issue might be specific to one of the folders in your multi-root workspace, by opening each folder individually to see if the issue repro's?
This sounds like it could be the same issue as https://github.com/microsoft/vscode-cpptools/issues/6126 , i.e. the platformIO issue that we haven't been able to get repro for yet.
same issue here with macOS 10.15.7 (19H15) and:
Building/syntax highlight doesn't work anymore: unable to code!! š
same issue with my project as well, but when i 1, remove the project form the workspace and then add it back 2, add the compiler path manually
seems work for me.
If anyone is able to get a crash call stack for the cpptools crash that could help us diagnose/fix it. We have info on one approach to get that at https://github.com/microsoft/vscode-cpptools/wiki/Attaching-debugger-to-cpptools-or-cpptools%E2%80%90srv, but those steps may not work because cpptools may exit out after the attach occurs (we have a potential fix for that but it hasn't been checked in yet).
@Colengms Sorry for the delay. I found some time today to continue debugging this issue. I wasn't able to do as much as I'd hoped, but here are the results of my testing.
I opened each folder in my multi-root workspace one-by-one using the "File > Open..." dialog. For all of the PlatformIO folders in the workspace, the extension (v1.1.2) outputs the following on the "C/C++ Configuration Warnings" channel, and the extension still works:
[11/28/2020, 6:06:41 PM] For C source files, IntelliSenseMode was changed from "gcc-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi@1.70201.0/bin/arm-none-eabi-gcc"
[11/28/2020, 6:06:41 PM] For C++ source files, IntelliSenseMode was changed from "gcc-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi@1.70201.0/bin/arm-none-eabi-gcc"
The final directory for some reason referenced clang, but the extension still works:
[11/28/2020, 6:27:39 PM] For C source files, IntelliSenseMode was changed from "clang-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gcc"
[11/28/2020, 6:27:39 PM] For C++ source files, IntelliSenseMode was changed from "clang-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gcc"
[11/28/2020, 6:27:45 PM] For C source files, IntelliSenseMode was changed from "gcc-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gcc"
[11/28/2020, 6:27:50 PM] For C++ source files, IntelliSenseMode was changed from "gcc-x64" to "gcc-arm" based on compiler args and probing compilerPath: "/Users/acarr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gcc"
For other (C-based) project folders, there is no output, and the extension still works.
I created a new workspace and added the directories one at a time (in reverse order), closing the window and reopening the workspace each time, to see if one would cause the extension to fall over. It appears that adding the topmost directory to the workspace causes IntelliSense to fail. The PlatformIO extension gets stuck on an "IntelliSense Index Rebuild" process and squiggles disappear from invalid includes.
Adding another directory instead does not reproduce the issue, so I believe the number of projects in the workspace isn't contributing.
Removing the project from the workspace, disabling the PlatformIO extension for the current workspace, closing and reopening the workspace, then re-adding the directory does not reproduce the issue.
@athisun Are you able to provide repro steps? I tried to piece together a repro from what you described but I'm not reproing a crash. I'm not sure what I'm doing differently.
This also happens when switching between branches.. the server crashes in versions 0.29 - 1.1.3, maybe in older versions too.
Hey @sean-mcmanus, this issue might need further attention.
@Colengms, you can help us out by closing this issue if the problem no longer exists, or adding more information.
This issue has been closed automatically because it needs more information and has not had recent activity.
Thanks @Colengms. No luck with raising the logging level to debug - the only output from cpptools is the one line
[Error - 11:57:15 AM] Connection to server got closed. Server will not be restarted.
. The Tasks, Extensions channel remains blank. The C/C++ channel has a single lineFinished installing dependencies
.I have tried reinstalling, downgrading to 1.1.0, uninstalling and deleting the extension folder from
.vscode\extensions
, all with the same result after vscode restart.I just tried the VSIX file after uninstalling and removing the extension directory from
.vscode/extensions
, installing via terminal usingcode --install-extension cpptools-osx.vsix
. Installing is successful, but restarting vscode yields the same output and eventually a popup warning "Extension host terminated unexpectedly.".Curious though that the logging level was remembered through un/re-installs - could this perhaps be caused by an invalid setting?
Originally posted by @athisun in https://github.com/microsoft/vscode-cpptools/issues/4833#issuecomment-725782232