{"id":18815,"date":"2018-03-29T16:18:42","date_gmt":"2018-03-29T23:18:42","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vcblog\/?p=18815"},"modified":"2019-02-18T17:48:00","modified_gmt":"2019-02-18T17:48:00","slug":"visual-studio-code-cc-extension-march-2018-update","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/visual-studio-code-cc-extension-march-2018-update\/","title":{"rendered":"Visual Studio Code C\/C++ extension March 2018 update"},"content":{"rendered":"<p>Today we are excited to announce the March 2018 update to the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-vscode.cpptools\">Visual Studio Code C\/C++ extension<\/a>! This update includes improved auto-complete for local and global scopes and a simplified configuration process for system includes and defines, enabling a better out-of-box IntelliSense experience. You can find the full list of changes in the <a href=\"https:\/\/github.com\/Microsoft\/vscode-cpptools\/releases\/tag\/0.16.0\">release notes<\/a>.<\/p>\n<p>We\u2019d like to thank everyone who tried our Insiders builds earlier this month and sent us feedback! Fixes for the issues you reported and feature suggestions you told us about helped shape the final release the way it is today \ud83d\ude0a. If you are not yet an insider but are interested, we\u2019d love for you to <a href=\"https:\/\/aka.ms\/vcvscodeinsiders\">join the VS Code C\/C++ Insiders program<\/a>.<\/p>\n<h2>Auto-complete for local and global scopes<\/h2>\n<p>While this feature is not completely new, IntelliSense now provides a semantic-aware list of auto-complete suggestions when you type in local and global variables and functions. Compared with the previous approach, the new auto-complete experience gives you a shorter and more relevant list of suggestions, making it easier to write C\/C++ code.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/126.jpg\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/126-1024x620.jpg\" alt=\"\" width=\"879\" height=\"532\" class=\"alignnone size-large wp-image-18825\" \/><\/a><\/p>\n<h2>System includes and defines automatically retrieved from the compiler<\/h2>\n<p>IntelliSense now automatically retrieves system includes and defines from GCC\/Clang-based compilers, eliminating the need for manual configuration in the \u201cincludePath\u201d and \u201cdefines\u201d settings. On Mac and Linux, the IntelliSense engine automatically selects a compiler as the default by searching for the installed compilers on the system. You can check which compiler is being used in the new \u201ccompilerPath\u201d setting in the <em>c_cpp_properties.json<\/em> file, and change the value if needed. The \u201ccompilerPath\u201d setting also accepts compiler arguments that affect the system defines returned.<\/p>\n<p>In addition, the new \u201ccStandard\u201d and \u201ccppStandard\u201d settings allow setting language standards explicitly for IntelliSense.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/220.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/220.png\" alt=\"\" width=\"771\" height=\"788\" class=\"alignnone size-large wp-image-18835\" \/><\/a><\/p>\n<h2>Force IntelliSense to process arbitrary headers<\/h2>\n<p>If you wish IntelliSense to process headers that are not explicitly listed in #include statements, you can now use the new \u201cforcedInclude\u201d setting to specify them. The IntelliSense engine will first process these headers before it looks at #includes.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/324.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/9\/2019\/02\/324.png\" alt=\"\" width=\"1432\" height=\"506\" class=\"alignnone wp-image-18845 size-full\" \/><\/a><\/p>\n<h2>Tell us what you think<\/h2>\n<p><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-vscode.cpptools\">Download the C\/C++ extension for Visual Studio Code<\/a>, try it out, and let us know what you think. File <a href=\"https:\/\/github.com\/Microsoft\/vscode-cpptools\/issues\">issues and suggestions on GitHub<\/a>. If you haven\u2019t already provided us feedback, please take this <a href=\"https:\/\/www.surveymonkey.com\/r\/X6ZSTP5\">quick survey<\/a> to help shape this extension for your needs. You can also find us on Twitter (<a href=\"https:\/\/twitter.com\/visualc\">@VisualC<\/a>).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today we are excited to announce the March 2018 update to the Visual Studio Code C\/C++ extension! This update includes improved auto-complete for local and global scopes and a simplified configuration process for system includes and defines, enabling a better out-of-box IntelliSense experience. You can find the full list of changes in the release notes. [&hellip;]<\/p>\n","protected":false},"author":269,"featured_media":35994,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[270,275],"tags":[274,276],"class_list":["post-18815","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-announcement","category-visual-studio-code","tag-c-extension","tag-vscode"],"acf":[],"blog_post_summary":"<p>Today we are excited to announce the March 2018 update to the Visual Studio Code C\/C++ extension! This update includes improved auto-complete for local and global scopes and a simplified configuration process for system includes and defines, enabling a better out-of-box IntelliSense experience. You can find the full list of changes in the release notes. [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/18815","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/269"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=18815"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/18815\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/35994"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=18815"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=18815"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=18815"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}