- Add IntegratedTerminal support for Linux and Windows. #35
- Unify Visual Studio Code debug protocol parsing by using a shared library with Visual Studio.
- Fix IntelliSense-based
Go to Definitionon overloads (in the same TU). #1071 - Fix inactive regions not being disabled when falling back to the Tag Parser. #2181
- Fix
#includecompletion not working withcompile_commands.jsonor custom configuration providers. #2242 - Fix IntelliSense failing if recursive includes removes all paths. #2442
- Fix incorrect IntelliSense errors with MinGW (stop using
-fms-extensionsby default). #2443, #2623 - Fix error squiggles sometimes not updating after typing. #2448
- Add support for Mac framework paths in
compile_commands.json. #2508 - Fix IntelliSense-based
Go to Definitionfalling back to the Tag Parser for definitions not in the TU. #2536, #2677 - Fix IntelliSense-based
Go to Definitionon the identifier of a definition with no declaration. #2573 - Fix IntelliSense-based
Go to Definitionnot falling back to the declaration (in certain cases). #2574 - Fix IntelliSense-based
Go to Definitiongoing to the wrong location after edits are made. #2579 - Fix
Go to Definitionwhen theintelliSenseEngineFallbackisDisabledand#includes are missing. #2583 - Fix empty
C_Cpp.default.*settings not being used. #2584 - Fix quoting around
ssh's command (for the debugger). #2585 - Fix crash on hover (and
Go to Definition) when using theTag Parser. #2586 - Fix errors when a workspace folder isn't open. #2613, #2691
- Fix
-isystemwithout a space after getting ignored incompile_comamands.json. #2629 - Fix Insiders update channel installation bugs. #2636, #2685
- Fix IntelliSense-based
Go to Declarationfalling back to the Tag Parser if the definition is also in the TU. #2642 - Fix the
DisabledintelliSenseEnginesetting not working with custom configuration providers. #2656
- Change the symbol database to update without needing to save. #202
- Enable IntelliSense-based
Go to Definitionfor the current translation unit, including local variables and overloaded operators. #255, #979 - Improved the
Go to Definitionperformance with large workspaces and files with lots of#includes. #273 - Disable
Go to Definitionfor invalid tokens, e.g. comments, strings, keywords, etc. #559 - Add
C_Cpp.updateChannelsetting for easier access to Insider builds of the extension. #1526 - Add support for v2 of the configuration provider API. #2237
- Fix bug with parsing definitions in
compile_commands.json. #2305 - Fix
shfailure when attaching to a remote Linux process. #2444 - Fix incorrect default
cl.exemacro. PR #2468 - Fix multiple bugs with the symbols in the Outline view not updating correctly. #2477, #2500, #2504
- Add support for
workspaceFolderBasenameexpansion. #2491 - Fix bug with variable resolution. #2532
- Fix off-by-one bug with hover and
Go to Definition. #2535 - Fix for Microsoft/vscode#54213
- Add the
C_Cpp.intelliSenseEnginesetting value ofDisabled(for users who only use the debugger). #785 - Add
C_Cpp.workspaceSymbolssetting with defaultJust My Codeto filter out system header symbols. #1119, #2320 - Add
C_Cpp.inactiveRegionForegroundColorandC_Cpp.inactiveRegionBackgroundColorsettings. #1620, #2212- John Patterson (@john-patterson) PR #2308
- Add
gcc-x64intelliSenseModeand send the correct clang or gcc version to our parser, fixing various IntelliSense errors. #2112, #2175, #2260, #2299, #2317 - Make
Go to Definitionon the definition go to the declaration instead. #2298 - Add multi-pass environment variable resolution allowing variables defined in terms of other variables. #2057
- John Patterson (@john-patterson) PR #2322
- Allow users to use
~for${userProfile}on Windows. PR #2333 - Add support for compiler flags
-fms-extensionsand-fno-ms-extensionson Windows (the default for MinGW-based compilers). #2363 - Make completion "show more results" (i.e. inaccessible members) when invoked a 2nd time. #2386
- Fix attach to process for systems without
bashby usingshinstead. #569- Andy Neff (@andyneff) PR #2340
- Fix IntelliSense crash after hover or completion with
_Complextypes. #689, #1112 - Fix
files.excludenot working to exclude non-workspace folders from symbol parsing. #1066 - Fix
Switch Header/Sourceto give results that match the parent folder name before using just the file name. #1085 - Fix incorrect IntelliSense errors caused by namespace lookup failure when instantiation template arguments in clang mode. #1395, #1559, #1753, #2272
- Fix missing parameter help when using { for constructors. #1667
- Fix Mac framework dependencies not being discovered. #1913
- Fix
compilerPathnot working with${workspaceFolder}. #1982 - Fix red flame getting stuck after modifying
c_cpp_properties.json. #2077 - Don't add empty
windowsSDKVersionif none exists. #2300 - Fix IntelliSense crash when the gcc-8 type_traits header is used. #2323, #2328
- Limit configuration popups to one at a time. #2324
- Don't show
includePathcode actions if compile commands or custom configuration providers are used. #2334 - Fix
Cpp.clang_format_pathnot accepting environment variables. #2344 - Fix IntelliSense not working with non-ASCII characters in the WSL install path. #2351
- Filter out buggy IntelliSense error
"= delete" can only appear on the first declaration of a function. #2352 - Fix IntelliSense failing with WSL if gcc is installed bug g++ isn't. #2360
- Fix WSL paths starting with
/mnt/failing to get symbols parsed. #2361 - Fix IntelliSense process crash when hovering over a designated initializer list with an anonymous struct. #2370
- Stop showing "File: " in completion details for internal compiler defines. #2387
- Invoke
Edit Configurations...when theConfiguration Helpbutton is clicked. #2408 - Fix provider configuration prompt not showing for newly added workspace folders. #2415
- Fix to allow SIGINT to be sent using the kill -2 command when using pipeTransport.
- Fix
Go to Definitionfor code scoped with an aliased namespace. #387 - Fix incorrect IntelliSense errors with template template-arguments. #1014
- Fix crash when using designated initializer lists. #1440
- Add
windowsSdkVersiontoc_cpp_properties.json. #1585 - Add
${vcpkgRoot}variable. #1817 - Fix dangling IntelliSense processes. #2075, #2169
- Fix incorrect IntelliSense errors when class template argument deduction is used. #2101
- Skip automatic parsing of source files in Mac system framework paths. #2156
- Fix
Edit Configurations...not working afterc_cpp_properties.jsonis deleted. #2214 - Fix indexing of the entire root drive on Windows when no is folder open. #2216
- Disable the config provider message for headers outside the workspace and when debugging. #2221
- Add
Change Configuration Provider...command. #2224 - Fix out-of-memory crash with
#includecode actions when no folder is open. #2225 - Fix
intelliSenseModewith custom config providers on Windows. #2228 - Fix formatting not working on Windows if the VC++ 2015 redist isn't installed. #2232
- Fix variables not resolving in
macFrameworkPath. #2234 - Fix
Go to Definitionnot working for macros followed by.or->. #2245 - Fix
#includeautocomplete with Mac framework headers. #2251 - Fix for debugging to support empty arguments for debuggee. #2258
- Fix
Go to Definitionbug (missing symbols outside the workspace). #2281 - Add a setting to silence configuration provider warnings. #2292
- Fix for debugging async Visual C++ causing debugger to hang.
- Fix
mainsnippet.
- Fix the database icon getting stuck with recursive includes. #2104
- Fix the red flame appearing late with recursive includes. #2105
- Fix source files being parsed in system directories. #2156
- Fix internal document corruption (visible after formatting) when edits are made too soon after activation. #2162
- Fix a crash when saving with recursive includes. #2173
- Fix a crash when the
includePathorbrowse.pathis"**". #2174 - Fix IntelliSense for WSL without g++ installed. #2178
- Fix random IntelliSense (completion) failures due to edits being delayed. #2184
- Fix database deletion failure with non-ASCII file paths on Windows. #2205
- Fix
Go to Definitionresults withvar::andvar->, and filter out invalid constructor results. #2207 - Fix a performance bug with recursive includes.
- Fixed a CPU usage problem on Mac related to system frameworks parsing.
- Keep the IntelliSense process around for 10 seconds after a file is closed in case it's needed again.
- Added an API so build system extensions can provide IntelliSense configurations for source files. More details at npmjs.com.
- Fix automatic argument quoting when debugging with gdb/lldb to include when the argument has a '(' or ')' in it. Also escape existing '"' symbols.
- Removed
-inpscall for ProcessPicker and RemoteProcessPicker. #2183
- Detect
compile_commands.jsonand show prompt to use it. #1297 - Change inactive regions from gray to translucent. #1907
- Improve performance of recursive includes paths. #2068
- Fix IntelliSense client failure due to
No args provider. #1908 - Fix
#includecompletion with headers in the same directory. #2031 - Fix non-header files outside the workspace folder not being parsed (i.e. so
Go to Definitionworks). #2053 - Fix some crashes. #2080
- Support asm clobber registers on Windows. #2090
- Fix usage of
${config:section.setting}. #2165 browse.pathnow inheritsincludePathif not set inc_cpp_properties.json.- On Windows,
compilerPathnow populates with the guessedcl.exepath, and theMSVCinclude path is based on thecl.exepath. - Fix files under a non-recursive
browse.pathbeing removed from the database. - Fix
*not working inbrowse.pathwith WSL. - Fix for -break-insert main returning multiple bind points. #729
- Use -- instead of -x for gnome-terminal. #733
- Added
miDebuggerArgsin order to pass arguments to the program inmiDebuggerPath. #720
- Fix infinite loop (caused by deadlock) when using recursive includes. #2043
- Stop using recursive includes in the default configuration.
- @Hyzeta PR #2059
- Fix various other potential deadlocks and crashes.
- Fix
Go to Definitionon#includenot filtering out results based on the path. #1253, #2033 - Fix database icon getting stuck. #1917
- Add support for
${workspaceFolder:folderName}. #1774 - Fix infinite loop during initialization on Windows. #1960
- Fix main process IntelliSense-related crashes. #2006
- Fix deadlock after formatting large files. #2007
- Fix recursive includes failing to find some system includes. #2019
- Fix IntelliSense update slowness when using recursive includes. #1949
- Fix code navigation failure after switching between WSL and non-WSL configs. #1958
- Fix extension crash when the
includePathis a file or the root drive. #1979, #1965 - Fix IntelliSense crash in
have_member_access_from_class_scope. #1763 - Fix
#includecompletion bugs. #1959, #1970 - Add
Debugvalue forloggingLevel(previously the hidden value"6"). - Fix C++17 features not being fully enabled with msvc-x64 mode. #1990
- Fix IntelliSense interprocess deadlocks. #1407, #1777
- Auto-complete for headers after typing
#include. #802 - Add support for recursive
includePath, e.g.${workspaceFolder}/**. #897 - Configuration improvements. #1338
- Add support for querying system includes/defines from WSL and Cygwin compilers. #1845, #1736
- Fix IntelliSense for WSL projects in Windows builds 17110 and greater. #1694
- Add snippets. PR #1823
- Add support for vcpkg. PR #1886
- Add support for custom variables in
c_cpp_properties.jsonviaenv. #1857, #368 - Stop automatically adding
/usr/includeto theincludePath. #1819 - Fix wrong configuration being used if there are four or more. #1599
- Fix
c_cpp_properties.jsonrequiring write access. #1790 - Change file not found in
compile_commands.jsonmessage from an error to a warning. #1783 - Fix an IntelliSense crash during completion requests. #1782
- Update the installed clang-format to 6.0.
- Fix bug with
compile_commands.jsonwhen "arguments" have both a switch and a value in the arg. #1890 - Fix bug with garbage data appearing in tooltips on Linux/Mac. #1577
- Fix random deadlock caused by logging code on Linux/Mac. #1759
- Fix compiler from
compileCommandsnot being queried for includes/defines ifcompilerPathisn't set on Windows. #1754 - Fix OSX
UseShellExecuteI/O bug. #1756 - Invalidate partially unzipped files from package manager. #1757
- Enable autocomplete for local and global scopes. #13
- Add a setting to define multiline comment patterns:
C_Cpp.commentContinuationPatterns. #1100, #1539 - Add a setting to disable inactive region highlighting:
C_Cpp.dimInactiveRegions. #1592 - Add
forcedIncludeconfiguration setting. #852 - Add
compilerPath,cStandard, andcppStandardconfiguration settings, and query gcc/clang-based compilers for default defines. #1293, #1251, #1448, #1465, #1484 - Fix text being temporarily gray when an inactive region is deleted. Microsoft/vscode#44872
- Add support for
${workspaceFolder}variable in c_cpp_properties.json. #1392 - Fix IntelliSense not updating in source files after dependent header files are changed. #1501
- Change database icon to use the
statusBar.foregroundcolor. #1638 - Enable C++/CLI IntelliSense mode via adding the
/clrarg to thecompilerPath. #1596 - Fix delay in language service activation caused by cpptools.json downloading. #1640
- Fix debugger failure when a single quote is in the path. #1554
- Fix terminal stdout and stderr redirection to not send to VS Code. #1348
- Fix blank config and endless "Initializing..." if the file watcher limit is hit when using
compileCommands. PR #1709 - Fix error squiggles re-appearing after editing then closing a file. #1712
- Show error output from clang-format. #1259
- Fix
add_expression_to_indexcrash (most frequent crash in 0.15.0). #1396 - Fix incorrect error squiggle
explicitly instantiated more than once. #871
- Add colorization for inactive regions. #1466
- Fix 3 highest hitting crashes. #1137, #1337, #1497
- Update IntelliSense compiler (bug fixes and more C++17 support). #1067, #1313
- Fix duplicate
cannot open source fileerrors. #1469 - Fix
Go to Symbol in File...being slow for large workspaces. #1472 - Fix stuck processes during shutdown. #1474
- Fix error popup appearing with non-workspace files when using
compile_commands.json. #1475 - Fix snippet completions being blocked after
#. #1531 - Add more macros to
cpp.hint(fixing missing symbols). - Add
__CHAR_BIT__=8to default defines on Mac. #1510 - Added support for config variables to
c_cpp_properties.json. #314- Joshua Cannon (@thejcannon) PR #1529
- Define
_UNICODEby default on Windows platforms. #1538- Charles Milette (@sylveon) PR #1540
- Fix tag parser failing (and continuing to fail after edits) when it shouldn't. #1367
- Fix tag parser taking too long due to redundant processing. #1288
- Fix debugging silently failing the 1st time if a C/C++ file isn't opened. #1366
- Skip automatically adding to
files.associationsif it matches an existing glob pattern or ifC_Cpp.autoAddFileAssociationsisfalse. #722 - The debugger no longer requires an extra reload. #1362
- Fix incorrect "Warning: Expected file ... is missing" message after installing on Linux. #1334
- Fix "Include file not found" messages not re-appearing after settings changes. #1363
- Performance improvements with
browse.pathparsing, and stop showing "Parsing files" when there's no actual parsing. #1393 - Fix crash when settings with the wrong type are used. #1396
- Allow semicolons in
browse.path. #1415 - Fix to handle relative pathing in source file paths properly when normalizing. #1228
- Fix delay in language service activation caused by cpptools.json downloading. #1429
- Add
C_Cpp.workspaceParsingPrioritysetting to enable using less than 100% CPU during parsing of workspace files. - Add
C_Cpp.exclusionPolicydefault tocheckFoldersto avoid expensivefiles.excludechecking on every file.
- Fix for stackwalk
NullReferenceException. #1339 - Fix for
-isystem(or-I) not being used incompile_commands.jsonif there's a space after it. #1343 - Fix for header switching from
.ccto.hppfiles (and other cases). #1341 - Fix reload prompts not appearing in debugging scenarios (after the initial installation). #1344
- Add a "wait" message when commands are invoked during download/installation. #1344
- Prevent blank "C/C++ Configuration" from appearing when debugging is started but the language service is not. #1353
- Enable the language service processes to run without glibc 2.18. #19
- Enable the language service processes to run on 32-bit Linux. #424
- Fix extension process not working on Windows with non-ASCII usernames. #1319
- Fix IntelliSense on single processor VMs. #1321
- Enable offline installation of the extension. #298
- Add support for
-isystemincompile_commands.json. #1156 - Remember the selected configuration across launches of VS Code. #1273
- Fix 'Add Configuration...` entries not appearing if the extension wasn't previously activated. #1287
- Add
(declaration)to declarations in the navigation list. #1311 - Fix function definition body not being visible after navigation. #1311
- Improve performance for fetching call stacks with large arguments. #363
- Fix for disappearing parameter hints tooltip. #1165
- Fix for parameter hints only showing up after the opening parenthesis. #902, #819
- Fix for customer reported crashes in the TypeScript extension code. #1240, #1245
- Fix .browse.VC-#.db files being unnecessarily created when an shm file exists. #1234
- Fix language service to only activate after a C/C++ file is opened or a C/Cpp command is used (not onDebug).
- Fix database resetting if shutdown got blocked by an IntelliSense operation. #1260
- Fix deadlock that can occur when switching configurations.
- Fix browse.databaseFilename changing not taking effect until a reload.
- Unsupported Linux clients sending excessive telemetry when the language server fails to start. #1227
- Add support for multi-root workspaces. #1070
- Fix files temporarily being unsavable after Save As and other scenarios on Windows. Microsoft/vscode#27329
- Fix files "permanently" being unsavable if the IntelliSense process launches during tag parsing of the file. #1040
- Show pause and resume parsing commands after clicking the database icon. #1141
- Don't show the install output unless an error occurs. #1160
- Fix bug with
${workspaceRoot}symbols not getting added if a parent folder is in thebrowse.path. #1185 - Fix
Add configurationC++ launch.json on Insiders. #1191 - Fix extension restart logic so that the extension doesn't get stuck on "Initializing..." when it crashes. #893
- Remove the Reload window prompt after installation (it only appears if launch.json is active).
- Prevent browse database from being reset if shutdown takes > 1 second.
- Remove the
UnloadLanguageServercommand and theclang_format_formatOnSavesetting. - Fix bugs with include path suggestions.
- Fix max files to parse status number being too big, due to including non-
${workspaceRoot}files. - Update default
launch.jsonconfigurations to use${workspaceFolder}instead of${workspaceRoot}. - Update how default initial configurations for
launch.jsonare being provided. Microsoft/vscode#33794 - Add support for normalizing source file locations. (Windows #272), (Mac OS X #1095)
- Add support for
compile_commands.json. #156 - Fix crash with signature help. #1076
- Skip parsing redundant browse.path directories. #1106
- Fix
limitSymbolsToIncludedHeadersnot working with single files. #1109 - Add logging to Output window. Errors will be logged by default. Verbosity is controlled by the
"C_Cpp.loggingLevel"setting. - Add new database status bar icon for "Indexing" or "Parsing" with progress numbers, and the previous flame icon is now just for "Updating IntelliSense".
- Stop showing
(Global Scope)if there's actually an error in identifying the correct scope. - Fix crash with the IntelliSense process when parsing certain template code (the most frequently hit crash).
- Fix main thread being blocked while searching for files to remove after changing
files.exclude. - Fix incorrect code action include path suggestion when a folder comes after "..".
- Fix a crash on shutdown.
- Delete unused symbol databases when
browse.databaseFilenameinc_cpp_properties.jsonchanges. #558 - Fix infinite loop during IntelliSense parsing. #981
- Fix database resetting due to the extension process not shutting down fast enough. #1060
- Fix crash with document highlighting #1076
- Fix bug that could cause symbols to be missing when shutdown occurs during tag parsing.
- Fix bug that could cause included files to not be reparsed if they were modified after the initial parsing.
- Fix potential buffer overrun when logging is enabled.
- Add logging to help diagnose cause of document corruption after formatting.
- Reference highlighting is now provided by the extension for both IntelliSense engines.
- Parameter help is now provided by both IntelliSense engines.
- Light bulbs (code actions) for
#includeerrors now suggest potential paths to add to theincludePathbased on a recursive search of thebrowse.path. #846 - Browse database now removes old symbols when
browse.pathchanges. #262 - Add
*on new lines after a multiline comment with/**is started. #579 - Fix
Go to Definition, completion, and parameter hints for partially scoped members. #635 - Fix bug in
macFrameworkPathnot resolving variables.
- Fix a crash in IntelliSense for users with non-ASCII user names (Windows-only). #910
- Add
macFrameworkPathtoc_cpp_properties.json. #970 - Fix incorrect auto-complete suggestions when using template types with the scope operator
::. #988 - Fix potential config file parsing failure. #989
- Support
${env:VAR}syntax for environment variables inc_cpp_properties.json. #1000 - Support semicolon delimiters for include paths in
c_cpp_properties.jsonto better support environment variables. #1001 - Add
__LITTLE_ENDIAN__=1to default defines so that "endian.h" is not needed on Mac projects. #1005 - Fix for source code files on Windows with incorrect casing. #984
- Fix regression for paths containing multibyte characters. #958
- Fix bug with the Tag Parser completion missing results. #943
- Add /usr/include/machine or i386 to the default Mac
includePath. #944 - Add a command to reset the Tag Parser database. #601, #464
- Fix bug with error-related code actions remaining after the errors are cleared.
- Fix bug with Tag Parser completion not working when :: preceded an identifier.
- Upgrade SQLite (for better reliability and performance).
- Fix bug in our build system causing Windows binaries to build against the wrong version of the Windows SDK. #325
- Added a gcc problemMatcher. #854
- Fix bug where .c/.cpp files could get added to
files.associationsas the opposite "cpp"/"c" language afterGo to Definitionon a symbol. #884 - Remove completion results after
#pragma. #886 - Fix a possible infinite loop when viewing Boost sources. #888
- Fix
Go to Definitionnot working for files in#include_next. #906- Also fix incorrect preprocessor suggestions at the end of a
#include_next.
- Also fix incorrect preprocessor suggestions at the end of a
- Skip automatically adding to
files.associationsif they already match global patterns. Microsoft/vscode#27404 - Fix a crash with the IntelliSense process (responsible for ~25% of all crashes).
- Fix Tag Parser features not working with some MinGW library code.
- Fix a symbol search crash.
- Fix an IntelliSense engine compiler crash.
- Fix
Go to Declarationto returnGo to Definitionresults if the declarations have no results. - Fix formatting with non-ASCII characters in the path. #870
- Fix handling of symbolic links to files on Linux/Mac. #872
- Move red flame icon to its own section so the configuration text is always readable. #875
- Remove
addWorkspaceRootToIncludePathsetting and instead make${workspaceRoot}inbrowse.pathexplicit. - Add
Show Release Notescommand. - Add
Edit Configurations...command to theSelect a Configuration...dropdown. - Update Microsoft Visual C++ debugger to Visual Studio 2017 released components.
- Fix issue in MinGW/Cygwin debugging where stop debugging causes VS Code to hang. Microsoft/MIEngine#636
- The default IntelliSense engine now provides semantic-aware autocomplete suggestions for
.,->, and::operators. #13 - The default IntelliSense engine now reports the unresolved include files in referenced headers and falls back to the Tag Parser until headers are resolved.
- This behavior can be overridden by setting
"C_Cpp.intelliSenseEngineFallback": "Disabled"
- This behavior can be overridden by setting
- Added
"intelliSenseMode"property toc_cpp_properties.jsonto allow switching between MSVC and Clang modes. #710, #757 - A crashed IntelliSense engine no longer gives the popup message, and it automatically restarts after an edit to the translation unit occurs.
- Fix the IntelliSense engine to use "c" mode if a C header is opened before the C file.
- Fix a bug which could cause the IntelliSense engine to not update results if changes are made to multiple files of a translation unit.
- Auto
files.associationregisters "c" language headers whenGo to Definitionis used in a C file. - Downloading extension dependencies will retry up to 5 times in the event of a failure. #694
- Changes to
c_cpp_properties.jsonare detected even if file watchers fail. - Update default IntelliSense options for MSVC mode to make Boost projects work better. #775
- Fix
Go to Definitionnot working until allbrowse.pathfiles are re-scanned. #788
- Fix for
System.Xml.Serialization.XmlSerializationReader threw an exceptionwhen debugging on Linux. #792 - Fix for escaping for
${workspaceRoot}inlaunch.json.
- Fix
x86_64-pc-linux-gnuandx86_64-linux-gnupaths missing from the defaultincludePath.
- Revert the default
C_Cpp.intelliSenseEnginesetting back to "Tag Parser" for non-Insiders while we work on improving the migration experience.
- Add keywords to auto-complete (C, C++, or preprocessor). #120
- Fix non-recursive
browse.pathon Linux/Mac. #546 - Fix .clang-format file not being used on Linux/Mac. #604
- Stop setting the c/cpp
editor.quickSuggestionsto false. #606- We also do a one-time clearing of that user setting, which will also copy any other c/cpp workspace settings to user settings. The workspace setting isn't cleared.
- Fix selection range off by one with
Peek Definition. #648 - Upgrade the installed clang-format to 4.0 #656
- Make keyboard shortcuts only apply to c/cpp files. #662
- Fix autocomplete with qstring.h. #666
- Fix C files without a ".c" extension from being treated like C++ for
errorSquiggles. #673 - Make the C IntelliSense engine use C11 instead of C89. #685
- Fix bug with clang-format not working with non-trimmed styles. #691
- Enable the C++ IntelliSense engine to use six C++17 features. #699
- Add reload prompt when a settings change requires it.
- Prevent non-existent files from being returned in
Go To Definitionresults.
- Enabled first IntelliSense features based on the MSVC engine.
- Quick info tooltips and compiler errors are provided by the MSVC engine.
C_Cpp.intelliSenseEngineproperty controls whether the new engine is used or not.C_Cpp.errorSquigglesproperty controls whether compiler errors are made visible in the editor.
- Add
Go to DeclarationandPeek Declaration. #271 - Fix language-specific workspace settings leaking into user settings. Microsoft/vscode#23118
- Fix
files.excludenot being used in some cases. #485 - Fix a couple potential references to an undefined
textEditor. #584 - Move changes from
README.mdtoCHANGELOG.md. #586 - Fix crash on Mac/Linux when building the browse database and
nftwfails. #591 - Add
Alt+Nkeyboard shortcut for navigation. #593 - Fix autocomplete crash when the result has an invalid UTF-8 character. #608
- Fix symbol search crash with
_symbol. #611 - Fix the
Edit Configurationscommand when '#' is in the workspace root path. #625 - Fix clang-format
TabWidthnot being set when formatting with theVisual Studiostyle. #630 - Enable
clang_format_fallbackStyleto be a custom style. #641 - Fix potential
undefinedreferences when attaching to a process. #650 - Fix
files.excludenot working on Mac. #653 - Fix crashes during edit and hover with unexpected UTF-8 data. #654
- Fix a crash that randomly occurred when the size of a document increased. #430
- Fix for browsing not working for Linux/Mac stdlib.h functions. #578
- Additional fixes for switch header/source not respecting
files.exclude. #485 - Made
editor.quickSuggestionsdependent onC_Cpp.autocomplete. #572- We recommend you close and reopen your settings.json file anytime you change the
C_Cpp.autocompletesetting. More info here.
- We recommend you close and reopen your settings.json file anytime you change the
- Fix a crash in signature help. #525
- Re-enable switch header/source when no workspace folder is open. #541
- Fix inline
clang_format_style. #536 - Some other minor bug fixes.
- Database stability fixes.
- Added enums to the C_Cpp settings so the possible values are displayed in the dropdown.
- Change from
${command.*}to${command:*}. #521 - Current execution row was not highlighting in debug mode when using gdb. #526
- New
addWorkspaceRootToIncludePathsetting allows users to disable automatic parsing of all files under the workspace root. #374 - The cpp.hint file was missing from the vsix package. #508
- Switch header/source now respects
files.exclude. #485 - Switch header/source performance improvements. #231
- Switch header/source now appears in the right-click menu.
- Improvements to signature help.
- Various other bug fixes.
- Bug fixes.
- Suppressed C++ language auto-completion inside a C++ comment or string literal. TextMate based completion is still available.
- Fixed bugs regarding the filtering of files and symbols, including:
- Find-symbol now excludes symbols found in
files.excludeorsearch.excludefiles - Go-to-definition now excludes symbols found in
files.excludefiles (i.e.search.excludepaths are still included).
- Find-symbol now excludes symbols found in
- Added option to disable
clang-format-based formatting provided by this extension via"C_Cpp.formatting" : "disabled" - Added new
pipeTransportfunctionality within thelaunch.jsonto support pipe communications withgdb/lldbsuch as usingplink.exeorssh. - Added support for
{command.pickRemoteProcess}to allow picking of processes for remote pipe connections duringattachscenarios. This is similar to how{command.pickProcess}works for local attach. - Bug fixes.
- December update for C/C++ extension
- Ability to map source files during debugging using
sourceFileMapproperty inlaunch.json. - Enable pretty-printing by default for gdb users in
launch.json. - Bug fixes.
- Bug fixes.
- Bug fixes.
- August update for C/C++ extension.
- Debugging for Visual C++ applications on Windows (Program Database files) is now available.
clang-formatis now automatically installed as a part of the extension and formats code as you type.clang-formatoptions have been moved from c_cpp_properties.json file to settings.json (File->Preferences->User settings).clang-formatfallback style is now set to 'Visual Studio'.- Attach now requires a request type of
attachinstead oflaunch. - Support for additional console logging using the keyword
logginginsidelaunch.json. - Bug fixes.
- Bug fixes.
- July update for C/C++ extension.
- Support for debugging on OS X with LLDB 3.8.0. LLDB is now the default debugging option on OS X.
- Attach to process displays a list of available processes.
- Set variable values through Visual Studio Code's locals window.
- Bug fixes.
- Bug fixes.
- June Update for C/C++ extension.
- Bug fixes.
- Switch between header and source.
- Control which files are processed under include path.
- Bug fixes.
- May update for C/C++ extension.
- Support for debugging on OS X with GDB.
- Support for debugging with GDB on MinGW.
- Support for debugging with GDB on Cygwin.
- Debugging on 32-bit Linux now enabled.
- Format code using clang-format.
- Experimental fuzzy auto-completion.
- Bug fixes.
- Usability and correctness bug fixes.
- Simplify installation experience.
- Usability and correctness bug fixes.