<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>
    
    <title><![CDATA[Standard C++ | Product News]]></title>
    <link>http://isocpp.org/blog</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:rights>Copyright 2026</dc:rights>
    <admin:generatorAgent rdf:resource="https://expressionengine.com/" />
    

    <item>
      <title>GCC 16.1 released: C++26 reflection / contracts / safety hardening, C++20 by default, and more!</title>
      <link>https://isocpp.org//blog/2026/04/gcc-16.1</link>
      <guid>https://isocpp.org//blog/2026/04/gcc-16.1</guid>
      <description><![CDATA[<p>
	GCC 16.1 has been released! Lots of good C++26 material including reflection and contracts.</p>
<blockquote>
	<h3>
		<a href="https://gcc.gnu.org/gcc-16/changes.html#cxx">GCC 16 Release Series: Changes, New Features, and Fixes</a></h3>
</blockquote>
<p>
	From the announcement:</p>
<blockquote>
	<ul>
		<li>
			C++20 by default: [...]&nbsp;<em>N.B. C++20 modules support is still experimental and must be enabled by&nbsp;<a href="https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/C_002b_002b-Dialect-Options.html#index-fmodules">-fmodules</a>.</em></li>
	</ul>
	<ul>
		<li>
			Several C++26 features have been implemented:
			<ul>
				<li>
					<a href="https://wg21.link/P2996R13">P2996R13</a>, Reflection (<a href="https://gcc.gnu.org/PR120775">PR120775</a>, enabled by&nbsp;<code>-std=c++26 -freflection</code>)</li>
				<li>
					<a href="https://wg21.link/P3394R4">P3394R4</a>, Annotations for Reflection</li>
				<li>
					<a href="https://wg21.link/P3293R3">P3293R3</a>, Splicing a base class subobject</li>
				<li>
					<a href="https://wg21.link/P3096R12">P3096R12</a>, Function Parameter Reflection</li>
				<li>
					<a href="https://wg21.link/P3491R3">P3491R3</a>,&nbsp;<code>define_static_</code>{<code>string</code>,<code>object</code>,<code>array</code>} (<a href="https://gcc.gnu.org/PR120783">PR120783</a>)</li>
				<li>
					<a href="https://wg21.link/P3560R2">P3560R2</a>, Error Handling in Reflection</li>
				<li>
					<a href="https://wg21.link/P1306R5">P1306R5</a>, Expansion statements (<a href="https://gcc.gnu.org/PR120776">PR120776</a>)</li>
				<li>
					<a href="https://wg21.link/P2900R14">P2900R14</a>, Contracts (<a href="https://gcc.gnu.org/PR119061">PR119061</a>)</li>
				<li>
					<a href="https://wg21.link/P2795R5">P2795R5</a>, Erroneous behavior for uninitialized reads (<a href="https://gcc.gnu.org/PR114457">PR114457</a>)</li>
				<li>
					[...]</li>
			</ul>
		</li>
	</ul>
	<ul>
		<li>
			Improved experimental C++20 modules support:
			<ul>
				<li>
					New command line option&nbsp;<code>--compile-std-module</code>&nbsp;that conveniently builds the&nbsp;<code>&lt;bits/stdc++.h&gt;</code>&nbsp;header unit and the&nbsp;<code>std</code>&nbsp;and&nbsp;<code>std.compat</code>&nbsp;modules before compiling any source files explicitly specified on the command line.</li>
				<li>
					Whenever the&nbsp;<code>&lt;bits/stdc++.h&gt;</code>&nbsp;header unit has been built, GCC now transparently translates an&nbsp;<code>#include</code>&nbsp;of any importable standard library header into an&nbsp;<code>import</code>&nbsp;of&nbsp;<code>&lt;bits/stdc++.h&gt;</code>.</li>
				<li>
					Many reported bugs have been fixed, thanks to Nathaniel Shead.</li>
				<li>
					[...]</li>
			</ul>
		</li>
	</ul>
	<h4 id="libstdcxx">
		<a href="https://gcc.gnu.org/gcc-16/changes.html#libstdcxx">Runtime Library (libstdc++)</a></h4>
	<ul>
		<li>
			<code><font face="Consolas, Courier New, Lucida Console, monospace">[...]</font></code></li>
		<li>
			<code><font face="Consolas, Courier New, Lucida Console, monospace">Improved experimental support for [...]</font></code>
			<ul>
				<li>
					<code>std::mdspan</code>, thanks to Luc Grosheintz.</li>
				<li>
					<code>[...]</code></li>
				<li>
					<code>std::simd</code>.</li>
				<li>
					<code>std::inplace_vector</code>.</li>
				<li>
					<code>[...]</code></li>
			</ul>
		</li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News, Standardization,]]></dc:subject>
      <pubDate>Thu, 30 Apr 2026 22:36:23 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>2026 Annual C++ Developer Survey &amp;quot;Lite&amp;quot;</title>
      <link>https://isocpp.org//blog/2026/04/2026-annual-cpp-developer-survey-lite1</link>
      <guid>https://isocpp.org//blog/2026/04/2026-annual-cpp-developer-survey-lite1</guid>
      <description><![CDATA[<p>
	<img alt="cpp_logo.png" src="https://isocpp.org/files/img/cpp_logo.png" style="width: 250px; margin: 10px; float: right; height: 281px;" /></p>
<p>
	The annual global C++ developer survey is now open:</p>
<blockquote>
	<h2>
		<a href="https://standardcpp.typeform.com/2026-dev-survey">2026 Annual C++ Developer Survey "Lite"</a></h2>
</blockquote>
<p>
	Please share your feedback in this annual <strong>10-minute</strong> survey to help inform C++ standardization and C++ tool vendors. This is the biggest opportunity we all have each year to make our voices heard and help improve our industry and community!</p>
<p>
	A summary of the results, including aggregated highlights of common answers in the write-in responses, will be posted publicly here on isocpp.org and shared with the C++ standardization committee participants and C++ tool vendors to help inform C++ evolution and tooling.</p>
<p>
	The survey closes in one week.</p>
<p>
	<em><strong>Thank you </strong></em>for participating and helping to inform our committee and community.</p>]]></description>
      <dc:subject><![CDATA[News, Product News, Standardization,]]></dc:subject>
      <pubDate>Wed, 22 Apr 2026 00:59:01 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.41: MISRA C 2023, enhanced Unreal Engine integration, new logging system</title>
      <link>https://isocpp.org//blog/2026/02/pvs-studio-7.41-misra-c-2023-enhanced-unreal-engine-integration-new-logging</link>
      <guid>https://isocpp.org//blog/2026/02/pvs-studio-7.41-misra-c-2023-enhanced-unreal-engine-integration-new-logging</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.41 has been released. It brings improvements for Unreal Engine, support for MISRA C 2023, an update to the IntelliJ IDEA plugin, and other useful changes.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1346/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.41: MISRA C 2023, enhanced Unreal Engine integration, new logging system, and much more</a></h3>
	<p>
		by&nbsp;Valerii Filatov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Throughout the year, we have been working to cover more of the MISRA C 2023 standard. Currently, PVS-Studio analyzer covers 86% of the standard. You can find more information on this page.&nbsp;In future releases, we will continue to expand MISRA C++ 2023 standard coverage.</p>
</blockquote>
<p>
	&nbsp;</p>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Tue, 24 Feb 2026 10:03:05 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>Talk: Who’s Afraid of the Big Bad Template &#45;&#45; Coral Kashri</title>
      <link>https://isocpp.org//blog/2026/01/talk-whos-afraid-of-the-big-bad-template-coral-kashri1</link>
      <guid>https://isocpp.org//blog/2026/01/talk-whos-afraid-of-the-big-bad-template-coral-kashri1</guid>
      <description><![CDATA[<p>
	<img alt="2026-01-09_11-18-10.png" src="https://isocpp.org/files/img/2026-01-09_11-18-10.png" style="width: 400px; margin: 10px; float: right;" /></p>
<p>
	Templates and metaprogramming considered as the big bad wolf of C++, and it&rsquo;s time to stop being scared of this wolf, as it&rsquo;s one of the most powerful creatures of C++.</p>
<blockquote>
	<h3>
		<a href="https://cppsenioreas.wordpress.com/2026/01/06/talk-whos-afraid-of-the-big-bad-template/">Talk: Who&rsquo;s Afraid of the Big Bad Template</a></h3>
	<p>
		by Coral Kashri</p>
</blockquote>
<p>
	From the description:</p>
<blockquote>
	<p>
		In this talk I&rsquo;ve demonstrated the power of this incredible creature, while I hope that this talk would be an easy enterence to this concept (pan intended), and to help you developing the anticipation to walk into the cave of metaprogramming.</p>
	<p>
		The talk was give on Core C++ 2025.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News, Video & On-Demand,]]></dc:subject>
      <pubDate>Thu, 15 Jan 2026 18:15:57 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Talk: Who’s Afraid of the Big Bad Template &#45;&#45; Coral Kashri</title>
      <link>https://isocpp.org//blog/2026/01/talk-whos-afraid-of-the-big-bad-template-coral-kashri</link>
      <guid>https://isocpp.org//blog/2026/01/talk-whos-afraid-of-the-big-bad-template-coral-kashri</guid>
      <description><![CDATA[<p>
	&nbsp;</p>
<p>
	<img alt="2026-01-09_11-18-10.png" src="https://isocpp.org/files/img/2026-01-09_11-18-10.png" style="width: 400px; margin: 10px; float: right;" /></p>
<p>
	Templates and metaprogramming considered as the big bad wolf of C++, and it&rsquo;s time to stop being scared of this wolf, as it&rsquo;s one of the most powerful creatures of C++.</p>
<blockquote>
	<h3>
		<a href="https://cppsenioreas.wordpress.com/2026/01/06/talk-whos-afraid-of-the-big-bad-template/">Talk: Who&rsquo;s Afraid of the Big Bad Template</a></h3>
	<p>
		by Coral Kashri</p>
</blockquote>
<p>
	From the description:</p>
<blockquote>
	<p>
		In this talk I&rsquo;ve demonstrated the power of this incredible creature, while I hope that this talk would be an easy enterence to this concept (pan intended), and to help you developing the anticipation to walk into the cave of metaprogramming.</p>
	<p>
		The talk was give on Core C++ 2025.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News, Video & On-Demand,]]></dc:subject>
      <pubDate>Thu, 15 Jan 2026 18:15:10 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Qt Jenny 1.0 Released &#45;&#45; Rami Potinkara</title>
      <link>https://isocpp.org//blog/2025/12/qt-jenny-1.0-released</link>
      <guid>https://isocpp.org//blog/2025/12/qt-jenny-1.0-released</guid>
      <description><![CDATA[<p>
	Qt Jenny is a Java/Android JNI glue/proxy Qt code generator. You can find and get it from Maven Central. Qt Jenny is a fork of Jenny from LanderlYoung. The fork differs from the original one by supporting JNI call gluing with QJni - classes such as QJniObject. That brings the powers of Qt for Android and the magic of Android Java native APIs to Qt!</p>
<blockquote>
	<h3>
		<a href="https://www.qt.io/blog/qt-jenny-1.0-released">Qt Jenny 1.0 Released</a></h3>
	<p>
		by&nbsp;Rami Potinkara</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Have you heard about Jenny? No, I do not mean, the girl next door, nor the Spinning Jenny that started the industrial revolution in England in the 17th century. This one is a modern information age revolution, a code generator, a cuter Jenny. Got your eyebrows raised? Are you a Qt developer? Perhaps you are mastering cross-platform development with Qt and deploying apps to Google Play? Read more below!</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Sat, 20 Dec 2025 22:01:31 +0000</pubDate>
      <dc:creator>Ville Voutilainen</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.40: support for Visual Studio 2026, Qt Creator 18, UE5 Horde</title>
      <link>https://isocpp.org//blog/2025/12/pvs-studio-7.40-support-for-visual-studio-2026-qt-creator-18-ue5-horde</link>
      <guid>https://isocpp.org//blog/2025/12/pvs-studio-7.40-support-for-visual-studio-2026-qt-creator-18-ue5-horde</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.40 has been released. The new version brings support for Visual Studio 2026 and Qt Creator 18, adds analysis of .NET 10 projects, enhances C# diagnostic rules, and includes other new features.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1325/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.40: support for Visual Studio 2026, Qt Creator 18, .NET 10, and more</a></h3>
	<p>
		by&nbsp;Gleb Aslamov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The new release introduces support for the fresh Visual Studio 2026.&nbsp;We&#39;re glad to present PVS-Studio plugin for Qt Creator 18.x. The plugin lets you run static analysis, view warnings, and handle your code directly within your IDE.&nbsp;Unreal Engine 5.5 brings a new tool called Horde, a platform that enables users to leverage CPU cycles on other machines to accelerate workloads.&nbsp;We&#39;ve updated the documentation section on working with Unreal Engine projects and included instructions for using the analyzer in the Unreal Build Accelerator distributed build system.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Fri, 19 Dec 2025 12:15:08 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>CLion 2025.3 Is Here, and It’s Epic: Constexpr Debugger, and More &#45;&#45; Oleg Zinovyev</title>
      <link>https://isocpp.org//blog/2025/12/clion-2025.3-is-here-and-its-epic-constexpr-debugger-and-more-oleg-zinovyev</link>
      <guid>https://isocpp.org//blog/2025/12/clion-2025.3-is-here-and-its-epic-constexpr-debugger-and-more-oleg-zinovyev</guid>
      <description><![CDATA[<p>
	CLion 2025.3 is here, a landmark release with a groundbreaking Constexpr Debugger...</p>
<blockquote>
	<h3>
		<a href="https://blog.jetbrains.com/clion/2025/12/2025-3-release/">CLion 2025.3 Is Here, and It&rsquo;s Epic: F<img alt="Screenshot_2025-12-09_170708.png" src="https://isocpp.org/files/img/Screenshot_2025-12-09_170708.png" style="width: 400px; margin: 10px; float: right;" />aster Language Engine, Unique Constexpr Debugger, DAP Support, and Much More</a></h3>
	<p>
		by Oleg Zinovyev</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		CLion 2025.3 represents one of our most ambitious releases yet. Beyond the extensive feature additions and workflow improvements, this version marks a fundamental shift in how we approach C and C++ language support &ndash; prioritizing speed and precision at every level.</p>
	<p>
		The key release updates are as follows:</p>
	Faster performance with the CLion Nova language engine as the default.</blockquote>
<blockquote>
	Deeper insight into compile-time evaluations with the unique Constexpr Debugger.</blockquote>
<blockquote>
	Expanded debugger options with support for the Debug Adapter Protocol.</blockquote>
<blockquote>
	[...]</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Wed, 10 Dec 2025 01:02:13 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Planning the next Meeting C++ job fairs</title>
      <link>https://isocpp.org//blog/2025/09/planning-the-next-meeting-cpp-job-fairs</link>
      <guid>https://isocpp.org//blog/2025/09/planning-the-next-meeting-cpp-job-fairs</guid>
      <description><![CDATA[<p>
	Meeting C++ is hosting a job fair in October online and planning a job fair in November in Berlin at <a href="https://meetingcpp.com/2025">Meeting C++ 2025</a>!</p>
<blockquote>
	<h2>
		<a href="https://meetingcpp.com/meetingcpp/news/items/Planning-the-next-Meeting-Cpp-job-fairs.html">Planning the next Meeting C++ job fairs</a></h2>
</blockquote>
<blockquote>
	<p>
		by Jens Weller</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The next Meeting C++ online job fair is planned for October 14th &amp; 15th, also I&#39;d like to talk about the onsite job fair plans for Meeting C++ 2025!</p>
	<p>
		If you have open positions you should advertise them in the bi-weekly Meeting C++ Jobs Newsletter, which now also powers the candidate listing of Meeting C++ with 80+ international candidates at the moment.</p>
	<p>
		&nbsp;</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News, Events,]]></dc:subject>
      <pubDate>Thu, 11 Sep 2025 16:01:12 +0000</pubDate>
      <dc:creator>Meeting C++</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.38: new C++ analyzer core</title>
      <link>https://isocpp.org//blog/2025/08/pvs-studio-7.38-new-cpp-analyzer-core</link>
      <guid>https://isocpp.org//blog/2025/08/pvs-studio-7.38-new-cpp-analyzer-core</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.38 has been released. This version brings the new core for the C and C++ analyzer, the user annotation mechanism in the Java analyzer, enhanced taint analysis, and that&#39;s not all! See more details in this note.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1276/">PVS-Studio 7.38: new C++ analyzer core, user annotations in Java, enhanced taint analysis, and more</a></h3>
	<p>
		by&nbsp;Aleksandra Uvarova</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The C and C++ analyzer got a new core with completely redesigned components like a parser, a semantic analyzer, and a type system. The new core provides more accurate handling of template constructs and better parsing of the standard library and code based on modern C++ standards. During the extended testing period (EAP), the new core demonstrated stable performance across a wide range of real-world projects.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Fri, 15 Aug 2025 08:43:29 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>Results summary: 2025 Annual C++ Developer Survey &amp;quot;Lite&amp;quot;</title>
      <link>https://isocpp.org//blog/2025/05/results-summary-2025-annual-cpp-developer-survey-lite</link>
      <guid>https://isocpp.org//blog/2025/05/results-summary-2025-annual-cpp-developer-survey-lite</guid>
      <description><![CDATA[<p>
	<strong>Thank you </strong>to everyone who reponded to&nbsp;<a href="https://isocpp.org/blog/2025/04/2025-annual-cpp-developer-survey-lite">our 2025 annual global C++ developer survey</a>. As promised, here is a summary of the results, including one-page AI-generated summaries of your answers to the free-form questions:</p>
<blockquote>
	<h3>
		<a href="https://isocpp.org/files/papers/CppDevSurvey-2025-summary.pdf">CppDevSurvey-2025-summary.pdf</a></h3>
</blockquote>
<p>
	A 100-page version of this report that also includes all individual write-in responses has now been forwarded to the C++ standards committee and C++ product vendors, to help inform C++ evolution and tooling.</p>
<p>
	Your feedback is valuable, and appreciated.</p>]]></description>
      <dc:subject><![CDATA[News, Product News, Standardization,]]></dc:subject>
      <pubDate>Mon, 19 May 2025 08:01:39 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>CLion Is Now Free for Non&#45;Commercial Use</title>
      <link>https://isocpp.org//blog/2025/05/clion-is-now-free-for-non-commercial-use</link>
      <guid>https://isocpp.org//blog/2025/05/clion-is-now-free-for-non-commercial-use</guid>
      <description><![CDATA[<p>
	Great news for C++ enthusiasts working on personal projects! JetBrains has announced that CLion is now available for free for non-commercial use.</p>
<blockquote>
	<h3>
		<a href="https://blog.jetbrains.com/clion/2025/05/clion-is-now-free-for-non-commercial-use/">CLion Is Now Free for Non-Commercial Use</a></h3>
</blockquote>
<blockquote>
	<p>
		by JetBrains</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		"Whether you&#39;re a student, an Arduino experimenter, or someone who loves &#1057; and C++ with all your heart despite all the challenges these languages present, CLion is now available to you for free &ndash; as long as you&#39;re not using it for commercial work."<a href="https://blog.jetbrains.com/wp-content/uploads/2025/05/Set_1_DSGN-22265_New_licensing_Featured_Blog_1280x720.png"><img alt="" src="https://blog.jetbrains.com/wp-content/uploads/2025/05/Set_1_DSGN-22265_New_licensing_Featured_Blog_1280x720.png" style="width: 1280px; height: 720px;" /></a></p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Wed, 07 May 2025 12:29:37 +0000</pubDate>
      <dc:creator>Jordi Mon Companys</dc:creator>
    </item>

    <item>
      <title>Clang 20.1.0 Release Notes &#45; Clang 20.1.0 Documentation</title>
      <link>https://isocpp.org//blog/2025/05/clang-20.1.0-release-notes-clang-20.1.0-documentation</link>
      <guid>https://isocpp.org//blog/2025/05/clang-20.1.0-release-notes-clang-20.1.0-documentation</guid>
      <description><![CDATA[<blockquote>
	<h3>
		<a href="https://releases.llvm.org/20.1.0/tools/clang/docs/ReleaseNotes.html#c-language-changesHi">Clang 20.1.0 Release Notes - Clang 20.1.0 Documentation</a></h3>
</blockquote>
<p>
	From the release notes:</p>
<blockquote>
	<p>
		<a href="https://releases.llvm.org/20.1.0/tools/clang/docs/ReleaseNotes.html#id234"><strong>C++ Language Changes</strong></a></p>
	<ul>
		<li>
			Allow single element access of GCC vector/ext_vector_type object to be constant expression. Supports the&nbsp;<em>V.xyzw</em>&nbsp;syntax and other tidbits as seen in OpenCL. Selecting multiple elements is left as a future work.</li>
		<li>
			Implement&nbsp;<a href="https://wg21.link/CWG1815"><strong>CWG1815</strong></a>. Support lifetime extension of temporary created by aggregate initialization using a default member initializer.</li>
		<li>
			Accept C++26 user-defined&nbsp;static_assert&nbsp;messages in C++11 as an extension.</li>
		<li>
			Add&nbsp;__builtin_elementwise_popcount&nbsp;builtin for integer types only.</li>
		<li>
			Add&nbsp;__builtin_elementwise_fmod&nbsp;builtin for floating point types only.</li>
		<li>
			Add&nbsp;__builtin_elementwise_minimum&nbsp;and&nbsp;__builtin_elementwise_maximum&nbsp;builtin for floating point types only.</li>
		<li>
			The builtin type alias&nbsp;__builtin_common_type&nbsp;has been added to improve the performance of&nbsp;std::common_type.</li>
	</ul>
	<p>
		C++2c Feature Support</p>
	<ul>
		<li>
			Add&nbsp;__builtin_is_virtual_base_of&nbsp;intrinsic, which supports&nbsp;<a href="https://wg21.link/p2985r0"><strong>P2985R0 A type trait for detecting virtual base classes</strong></a></li>
		<li>
			Implemented&nbsp;<a href="https://wg21.link/P2893"><strong>P2893R3 Variadic Friends</strong></a></li>
		<li>
			Implemented&nbsp;<a href="https://wg21.link/P2747R2"><strong>P2747R2 constexpr placement new</strong></a>.</li>
		<li>
			Added the&nbsp;__builtin_is_within_lifetime&nbsp;builtin, which supports&nbsp;<a href="https://wg21.link/p2641r4"><strong>P2641R4 Checking if a union alternative is active</strong></a></li>
		<li>
			Implemented&nbsp;<a href="https://wg21.link/P3176R1"><strong>P3176R1 The Oxford variadic comma</strong></a></li>
	</ul>
	<p>
		C++23 Feature Support</p>
	<ul>
		<li>
			Removed the restriction to literal types in constexpr functions in C++23 mode.</li>
		<li>
			Extend lifetime of temporaries in mem-default-init for P2718R0. Clang now fully supports&nbsp;<a href="https://wg21.link/P2718R0"><strong>P2718R0 Lifetime extension in range-based for loops</strong></a>.</li>
		<li>
			__cpp_explicit_this_parameter&nbsp;is now defined. (<a href="https://github.com/llvm/llvm-project/issues/82780"><strong>#82780</strong></a>)</li>
		<li>
			Add&nbsp;__builtin_is_implicit_lifetime&nbsp;intrinsic, which supports&nbsp;<a href="https://wg21.link/p2674r1"><strong>P2674R1 A trait for implicit lifetime types</strong></a></li>
		<li>
			Add support for&nbsp;<a href="https://wg21.link/P2280R4"><strong>P2280R4 Using unknown pointers and references in constant expressions</strong></a>. (<a href="https://github.com/llvm/llvm-project/issues/63139"><strong>#63139</strong></a>)</li>
	</ul>
	<p>
		C++20 Feature Support</p>
	<ul>
		<li>
			Implemented module level lookup for C++20 modules. (<a href="https://github.com/llvm/llvm-project/issues/90154"><strong>#90154</strong></a>)</li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Tue, 06 May 2025 20:44:26 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>GCC 15 is now available, with support for more draft C++26 features</title>
      <link>https://isocpp.org//blog/2025/05/gcc-15-is-now-available-with-support-for-more-draft-cpp26-features1</link>
      <guid>https://isocpp.org//blog/2025/05/gcc-15-is-now-available-with-support-for-more-draft-cpp26-features1</guid>
      <description><![CDATA[<p>
	<img alt="gccegg-65.png" src="https://isocpp.org/files/img/gccegg-65.png" style="width: 109px; margin: 10px; float: right;" />GCC 15 is <a href="https://gcc.gnu.org/gcc-15/">now available</a>!</p>
<p>
	Here are some highlights from the release notes&#39; C++ section:</p>
<ul>
	<li>
		Several C++26 features have been implemented:
		<ul>
			<li>
				<a href="https://wg21.link/P2558R2">P2558R2</a>, Add @, $, and ` to the basic character set (<a href="https://gcc.gnu.org/PR110343">PR110343</a>)</li>
			<li>
				<a href="https://wg21.link/P2552R3">P2552R3</a>, On the ignorability of standard attributes (<a href="https://gcc.gnu.org/PR110345">PR110345</a>)</li>
			<li>
				<a href="https://wg21.link/P2662R3">P2662R3</a>, Pack indexing (<a href="https://gcc.gnu.org/PR113798">PR113798</a>)</li>
			<li>
				<a href="https://wg21.link/P0609R3">P0609R3</a>, Attributes for structured bindings (<a href="https://gcc.gnu.org/PR114456">PR114456</a>)</li>
			<li>
				<a href="https://wg21.link/P2573R2">P2573R2</a>,&nbsp;= delete("reason");&nbsp;(<a href="https://gcc.gnu.org/PR114458">PR114458</a>)</li>
			<li>
				<a href="https://wg21.link/P2893R3">P2893R3</a>, Variadic friends (<a href="https://gcc.gnu.org/PR114459">PR114459</a>)</li>
			<li>
				<a href="https://wg21.link/P3034R1">P3034R1</a>, Disallow module declarations to be macros (<a href="https://gcc.gnu.org/PR114461">PR114461</a>)</li>
			<li>
				<a href="https://wg21.link/P2747R2">P2747R2</a>,&nbsp;constexpr&nbsp;placement new (<a href="https://gcc.gnu.org/PR115744">PR115744</a>)</li>
			<li>
				<a href="https://wg21.link/P0963R3">P0963R3</a>, Structured binding declaration as a condition (<a href="https://gcc.gnu.org/PR115745">PR115745</a>)</li>
			<li>
				<a href="https://wg21.link/P3144R2">P3144R2</a>, Deleting a pointer to an incomplete type should be ill-formed (<a href="https://gcc.gnu.org/PR115747">PR115747</a>)</li>
			<li>
				<a href="https://wg21.link/P3176R0">P3176R0</a>, Oxford variadic comma (<a href="https://gcc.gnu.org/PR117786">PR117786</a>)</li>
			<li>
				<a href="https://wg21.link/P2865R5">P2865R5</a>, Removing deprecated array comparisons (<a href="https://gcc.gnu.org/PR117788">PR117788</a>)</li>
			<li>
				<a href="https://wg21.link/P1967R14">P1967R14</a>,&nbsp;#embed&nbsp;(<a href="https://gcc.gnu.org/PR119065">PR119065</a>)</li>
			<li>
				<a href="https://wg21.link/P3247R2">P3247R2</a>, Deprecating the notion of trivial types (<a href="https://gcc.gnu.org/PR117787">PR117787</a>)</li>
		</ul>
	</li>
</ul>
<ul>
	<li>
		C++ Modules have been greatly improved.</li>
</ul>
<ul>
	<li>
		Compilation time speed ups, e.g. by improving hashing of template specializations.</li>
</ul>
<p>
	... and more, see the <a href="https://gcc.gnu.org/gcc-15/changes.html">release notes</a>.</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Thu, 01 May 2025 21:09:27 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Looking for Employers for the Meeting C++ Job Fair and the C++ Jobs Newsletter</title>
      <link>https://isocpp.org//blog/2025/04/looking-for-employers-for-the-meeting-cpp-job-fair-and-the-c-jobs-newslette</link>
      <guid>https://isocpp.org//blog/2025/04/looking-for-employers-for-the-meeting-cpp-job-fair-and-the-c-jobs-newslette</guid>
      <description><![CDATA[<p>
	Meeting C++ is looking for C++ Employers, as it starts a <a href="https://www.linkedin.com/newsletters/meeting-c-jobs-newsletter-7306026728714305537/">C++ Jobs Newsletter</a> and hosts an online C++ Job fair in May!</p>
<blockquote>
	<h2>
		<a href="https://meetingcpp.com/meetingcpp/news/items/Looking-for-Employers-for-the-Job-Fair-and-the-Jobs-Newsletter.html">Looking for Employers for the C++ Job Fair and the C++ Jobs Newsletter</a></h2>
	<p>
		by Jens Weller</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Meeting C++ launches a new jobs newsletter! <a href="https://meetingcpp.com/mcpp/recruiting/jobsubmission.php">Share your open positions</a>!</p>
	<p>
		The jobs newsletter already has 1500+ subscribers and aims at a bi-weekly schedule, with sometimes being weekly when lots of jobs are submitted. Once a month Meeting C++ will also send the jobs newsletter on its main newsletter with 25k+ subscribers in 2025. So your open positions will be seen by lots of experienced developers.</p>
	<p>
		&nbsp;</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Tue, 15 Apr 2025 14:47:34 +0000</pubDate>
      <dc:creator>Meeting C++</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.35: MISRA C 2023 support, Qt Creator 15 plugin, and more</title>
      <link>https://isocpp.org//blog/2025/02/pvs-studio-7.35-misra-c-2023-support-qt-creator-15-plugin-and-more</link>
      <guid>https://isocpp.org//blog/2025/02/pvs-studio-7.35-misra-c-2023-support-qt-creator-15-plugin-and-more</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.35 has been released. Support for the MISRA C standard, the plugin for Qt Creator 15.x, modified file analysis in Visual Studio, and that&#39;s not all.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1225/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.35: MISRA C 2023 support, Qt Creator 15 plugin, and more</a></h3>
	<p>
		by Vladislav Bogdanov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		We&#39;ve begun work to expand the PVS-Studio&#39;s coverage of the MISRA C standard. With the release of 7.35, the first eight diagnostic rules have already been implemented, and more are on the way. The full list of implemented rules is provided below. We plan to cover at least 85% of MISRA C and support the latest version of MISRA C 2023.</p>
</blockquote>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Wed, 26 Feb 2025 20:52:35 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.34: support for Apple Silicon ARM64, CodeChecker</title>
      <link>https://isocpp.org//blog/2024/12/pvs-studio-7.34-support-for-apple-silicon-arm64-codechecker</link>
      <guid>https://isocpp.org//blog/2024/12/pvs-studio-7.34-support-for-apple-silicon-arm64-codechecker</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.34 has been released. Discover the latest features, including support for Apple Silicon processors with ARM64 architecture, .NET 9 project compatibility, the introduction of the taint analysis mechanism in the Java analyzer, and more.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1200/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.34: support for Apple Silicon ARM64, CodeChecker</a></h3>
	<p>
		by Aleksandra Uvarova</p>
</blockquote>
<p>
	From the article:</p>
<p>
	New diagnostic rules. C, C++:</p>
<ul>
	<li>
		V1116. Creating an exception object without an explanatory message may result in insufficient logging.</li>
	<li>
		V1117. The declared function type is cv-qualified. The behavior when using this type is undefined.</li>
	<li>
		V2022. Implicit type conversion from integer type to enum type.</li>
	<li>
		V5014. OWASP. Cryptographic function is deprecated. Its use can lead to security issues. Consider switching to an equivalent newer function.</li>
</ul>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Thu, 19 Dec 2024 07:24:05 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>CGAL Released, Computational Geometry Algorithms Library &#45;&#45; Laurent Rineau</title>
      <link>https://isocpp.org//blog/2024/10/CGAL-6.0-released-Computational-Geometry-Algorithms-Library</link>
      <guid>https://isocpp.org//blog/2024/10/CGAL-6.0-released-Computational-Geometry-Algorithms-Library</guid>
      <description><![CDATA[<p>
	The CGAL Open Source Project is pleased to announce the recent releases of CGAL versions 5.5.5, 5.6.2, 6.0, and 6.0.1.</p>
<blockquote>
	<h3>
		<a href="https://www.cgal.org/2024/10/23/CGAL-6.0/">New CGAL versions: 5.5.5, 5.6.2, 6.0, and 6.0.1</a></h3>
	<p>
		by Laurent Rineau</p>
</blockquote>
<p>
	From the article</p>
<blockquote>
	<h3>
		CGAL version 6.0</h3>
	<p>
		CGAL version <a href="/2024/09/27/cgal60/">6.0</a> was released on September 27, 2024. Following the discovery of early issues, version <a href="/2024/10/22/cgal601/">6.0.1</a> was subsequently released on October 22, 2024.</p>
	<p>
		This version is a major release, with many new features and improvements.</p>
	<h4>
		General changes</h4>
	<ul>
		<li>
			<strong>C++17 Requirement</strong>: CGAL 6.0 requires a C++17 compatible compiler.</li>
		<li>
			<strong>GMP/MPFR Optional</strong>: GMP/MPFR are no longer mandatory; Boost.Multiprecision can be used.</li>
		<li>
			<strong>Qt6 Demos</strong>: All demos are now based on Qt6.</li>
		<li>
			<strong>Polyhedral Surface</strong>: The demo has been renamed to &ldquo;CGAL Lab&rdquo; and moved to its own directory in <code>demo/Lab/</code>.</li>
	</ul>
	<h4>
		New Packages</h4>
	<ul>
		<li>
			<strong><a href="https://doc.cgal.org/6.0.1/Manual/packages.html#PkgKineticSpacePartition">Kinetic Space Partition</a></strong>: Partition of the space from planar input shapes.</li>
		<li>
			<strong><a href="https://doc.cgal.org/6.0.1/Manual/packages.html#PkgKineticSurfaceReconstruction">Kinetic Surface Reconstruction</a></strong>: Reconstructs surfaces from point clouds.</li>
		<li>
			<strong><a href="https://doc.cgal.org/6.0.1/Basic_viewer/index.html#Chapter_Basic_viewer">Basic Viewer</a></strong>: Interactive visualization for various CGAL packages.</li>
		<li>
			<strong><a href="https://doc.cgal.org/6.0.1/Manual/packages.html#PkgPolygonRepair">Polygon Repair</a></strong>: Algorithms to repair 2D polygons and multipolygons.</li>
	</ul>
	<h4>
		Breaking Changes</h4>
	<ul>
		<li>
			<strong>CMake Changes</strong>: <code>UseCGAL.cmake</code> removed; use <code>CGAL::CGAL</code> target instead.</li>
		<li>
			<strong>Kernel</strong>: Replaced <code>boost::variant</code> with <code>std::variant</code> and <code>boost::optional</code> with <code>std::optional</code> in the intersection functions.</li>
	</ul>
	<h4>
		Enhancements</h4>
	<ul>
		<li>
			<strong>AABB Tree</strong>: Now supports 2D and 3D primitives.</li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Wed, 23 Oct 2024 18:59:22 +0000</pubDate>
      <dc:creator>Laurent Rineau</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.33: SN&#45;DBS support</title>
      <link>https://isocpp.org//blog/2024/10/pvs-studio-7.33-sn-dbs-support</link>
      <guid>https://isocpp.org//blog/2024/10/pvs-studio-7.33-sn-dbs-support</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.33 has been released. Check out the latest features, including SN-DBS support, C# user annotations, and other exciting updates! See more details in this note.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1170/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.33: SN-DBS support</a></h3>
	<p>
		by Valerii Filatov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		To enhance the integration of PVS-Studio with Unreal Engine, we&#39;ve introduced support for SN-DBS, a distributed build system. These changes apply to Unreal Engine 5.5. Learn more about using PVS-Studio with Unreal Engine in the documentation.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Sun, 20 Oct 2024 09:15:49 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.32: enhanced analysis, new plugins and more</title>
      <link>https://isocpp.org//blog/2024/08/pvs-studio-7.32-enhanced-analysis-new-plugins-and-more</link>
      <guid>https://isocpp.org//blog/2024/08/pvs-studio-7.32-enhanced-analysis-new-plugins-and-more</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.32 has been released. Discover enhanced C++ analysis optimization, new plugins and features, and a host of other updates.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1155/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.32: enhanced analysis, new plugins and more</a></h3>
	<p>
		by Gleb Aslamov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The PVS-Studio analyzer now supports integration with Bazel and Scons build systems for C++ projects. The PVS-Studio plugin is now available for Qt Creator 14.x. The plugin for Qt Creator 8.x is no longer supported. We aim to ensure backward compatibility between the latest plugin versions and all Qt Creator versions released in the past two years.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Sun, 18 Aug 2024 18:28:40 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>HPX V1.10.0 released &#45;&#45; STE||AR Group</title>
      <link>https://isocpp.org//blog/2024/05/hpx-v1.10.0-released-stellar-group</link>
      <guid>https://isocpp.org//blog/2024/05/hpx-v1.10.0-released-stellar-group</guid>
      <description><![CDATA[<p>
	<a href="https://github.com/STEllAR-GROUP/hpx/"><img alt="" src="https://isocpp.org/files/img/stellar_logo.png" style="margin: 10px; width: 320px; height: 43px; float: right;" /></a>The STE||AR Group has released V1.10.0 of HPX -- A C++ Standard library for Concurrency and Parallelism.</p>
<blockquote>
	<h3>
		<a href="https://hpx.stellar-group.org/hpx-1-10-0-released/">HPX V1.10.0 Released</a></h3>
</blockquote>
<p>
	We have released HPX 1.10.0 &mdash; a major update to our C++ Standard Library for Concurrency and Parallelism. We have continued to modernize HPX to fully conform to the latest standardization efforts in the are of parallelism and concurrency. Our HPX documentation has seen a major overhaul for this release, please have a look <a href="https://hpx-docs.stellar-group.org/latest/html/index.html">here</a>. We finished documenting the public local HPX API, we have added migration guides from widely used parallelization platforms to HPX (OpenMP, TBB, and MPI). Among other things, we have performed a lot of code cleanup and refactoring to improve the overall code quality and decrease compile times and to improve the consistency of our exposed APIs. The core implementation has seen many performance optimizations that impact every aspect of our applications.</p>
<p>
	If you have any questions, comments, or exploits to report you can reach us on IRC or Matrix (#ste||ar on libera.chat) or email us at <a href="http://mailto:hpx-users@stellar-group.org">hpx-users</a>. We depend on your input!</p>
<p>
	You can download the release from our <a href="https://github.com/STEllAR-GROUP/hpx/releases/tag/v1.10.0">releases page</a> or <a href="https://github.com/STEllAR-GROUP/hpx/tree/v1.10.0">check out</a> the v1.10.0 tag using git. A full list of changes can be found in the <a href="https://hpx-docs.stellar-group.org/latest/html/releases/whats_new_1_10_0.html">release notes</a>.</p>
<p>
	HPX is a general-purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++20 Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17, C++20, and C++23 parallel algorithms, including a full set of parallel range-based algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the features related parallelism and concurrency as specified by the upcoming C++23 Standard, the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g., compute clusters) and for heterogeneous systems (e.g., GPUs).</p>
<p>
	HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parallelism and concurrency.</p>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Wed, 29 May 2024 14:44:40 +0000</pubDate>
      <dc:creator>Hartmut Kaiser</dc:creator>
    </item>

    <item>
      <title>GCC 14 &#45;fanalyzer improvements for buffer overflows and more &#45;&#45; David Malcolm</title>
      <link>https://isocpp.org//blog/2024/04/gcc-14-fanalyzer-improvements-for-buffer-overflows-and-more-david-malcolm</link>
      <guid>https://isocpp.org//blog/2024/04/gcc-14-fanalyzer-improvements-for-buffer-overflows-and-more-david-malcolm</guid>
      <description><![CDATA[<p>
	<img alt="" src="https://developers.redhat.com/sites/default/files/screenshot_from_2024-03-28_16-04-16.png" style="width: 400px; height: 302px; margin: 10px; float: right;" />For anyone interested in the top source of memory safety issues, out-of-bounds accesses... GCC 14 will be able to catch more cases, and even show them with some colorful retro ASCII art:</p>
<blockquote>
	<h3>
		<a href="https://developers.redhat.com/articles/2024/04/03/improvements-static-analysis-gcc-14-compiler#visualizing_buffer_overflows">Improvements to static analysis in the GCC 14 compiler</a></h3>
	<p>
		by David Malcolm</p>
</blockquote>
<p>
	It does require some source code annotation, but also delivers safety value in return.</p>
<p>
	From the article:</p>
<blockquote>
	So for GCC 14, I&#39;ve added the ability for the analyzer to emit text-based diagrams visualizing the spatial relationships in a predicted buffer overflow. ... [For example,] this diagram shows the destination buffer populated by the content from the&nbsp;<code>strcpy</code>&nbsp;call, and thus the existing terminating&nbsp;<code>NUL</code>&nbsp;byte used for the start of the&nbsp;<code>strcat</code>&nbsp;call. For non-ASCII strings ... it can show the UTF-8 representation of the characters ...
	<p>
		... [Another improvement] is that the analyzer now simulates APIs that scan a buffer expecting a null terminator byte, and will complain about code paths where a pointer to a buffer that isn&#39;t properly terminated is passed to such an API.</p>
</blockquote>
<p>
	Plus more, such as:</p>
<blockquote>
	<p>
		The analyzer has a form of "taint analysis", which tracks attacker-controlled inputs, places where they are sanitized, and places where they are used without sanitization. In previous GCC releases this was too buggy to enable by default, with lots of false positives, so I hid it behind an extra command-line argument. I&#39;ve fixed many bugs with this, so for GCC 14 I&#39;ve enabled this by default when&nbsp;<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-fanalyzer">-fanalyzer</a>&nbsp;is selected. This also enables these 6 taint-based warnings:</p>
	<ul>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-allocation-size">-Wanalyzer-tainted-allocation-size</a></li>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-array-index">-Wanalyzer-tainted-array-index</a></li>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-assertion">-Wanalyzer-tainted-assertion</a></li>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-divisor">-Wanalyzer-tainted-divisor</a></li>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-offset">-Wanalyzer-tainted-offset</a></li>
		<li>
			<a href="http://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html#index-Wanalyzer-tainted-size">-Wanalyzer-tainted-size</a></li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Thu, 04 Apr 2024 22:32:34 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Using Copilot Chat with C++ in VS Code &#45;&#45; Sinem Akinci</title>
      <link>https://isocpp.org//blog/2024/04/using-copilot-chat-with-cpp-in-vs-code-sinem-akinci</link>
      <guid>https://isocpp.org//blog/2024/04/using-copilot-chat-with-cpp-in-vs-code-sinem-akinci</guid>
      <description><![CDATA[<p>
	<img alt="copilotchat.png" src="https://isocpp.org/files/img/copilotchat.png" style="width: 400px; margin: 10px; float: right;" />If you are a C++ developer who uses VS Code as your editor, Copilot Chat can help you with many of your everyday coding tasks by allowing you to iterate with your code in natural language.</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/how-to-use-copilot-chat-in-c-with-vs-code/">Using Copilot Chat with C++ in VS Code</a></h3>
	<p>
		by Sinem Akinci</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		We have just released a new YouTube video demonstrating the power of Copilot Chat in C++ code:</p>
	<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="" frameborder="0" height="310" src="https://www.youtube.com/embed/ZfT2CXY5-Dc" title="Getting Started using Copilot Chat for C++ in VS Code" width="556"></iframe>
	<p>
		We cover how Copilot Chat can provide enhancements to your C++ coding scenarios like:</p>
	<ul>
		<li>
			Simplifying and refactoring existing code</li>
		<li>
			Generating new code and iterating with the prompt</li>
		<li>
			Generating and explaining new test cases</li>
		<li>
			Refactoring test cases to new frameworks</li>
		<li>
			Understanding errors with your code</li>
		<li>
			&hellip; and more!</li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Thu, 04 Apr 2024 17:55:46 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Seastar, ScyllaDB, and C++23</title>
      <link>https://isocpp.org//blog/2024/02/seastar-scylladb-and-cpp23</link>
      <guid>https://isocpp.org//blog/2024/02/seastar-scylladb-and-cpp23</guid>
      <description><![CDATA[<p>
	<img alt="" src="https://www.scylladb.com/wp-content/uploads//1200x628-seastar-cscylladb.png" />Seastar announces that now that C++23 is available, they will support C++23 and C++20 (dropping support for C++17) in accordance with their support policy</p>
<blockquote>
	<h3>
		<a href="https://www.scylladb.com/2024/02/14/seastar-scylladb-and-c23/">Seastar, ScyllaDB, and C++23</a></h3>
</blockquote>
<blockquote>
	<p>
		By Avi Kivity</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Seastar is an open-source (Apache 2.0 licensed) C++ framework for I/O intensive asynchronous computing, using the thread-per-core model. Seastar underpins several high- performance distributed systems: ScyllaDB, Redpanda, and Ceph Crimson. Seastar source is available on github. As a C++ framework, Seastar must choose which C++ versions to support. The support policy is last-two-versions. That means that at any given time, the most recently released version as well as the previous one are supported, but earlier versions cannot be expected to work. This policy gives users of the framework three years to upgrade to the next C++ edition while not constraining Seastar to ancient versions of the language.</p>
	<p>
		Now that C++23 has been ratified, Seastar now officially supports C++20 and C++23. The previously supported C++17 is now no longer supported.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sat, 17 Feb 2024 12:37:57 +0000</pubDate>
      <dc:creator>Jordi Mon Companys</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.29: Boost smart pointers, plugin for Qt Creator on macOS</title>
      <link>https://isocpp.org//blog/2024/02/pvs-studio-7.29-boost-smart-pointers-plugin-for-qt-creator-on-macos</link>
      <guid>https://isocpp.org//blog/2024/02/pvs-studio-7.29-boost-smart-pointers-plugin-for-qt-creator-on-macos</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.29 has been released. Now you can analyze Java projects in a plugin for VS Code, check Boost smart pointers, use the PVS-Studio plugin for Qt Creator 12 on macOS, and that&#39;s not all.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1102/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.29: Java code check in VS Code, Boost smart pointers, and plugin for Qt Creator on macOS</a></h3>
	<p>
		by Gleb Aslamov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The C++ analyzer now supports smart pointers from the Boost library: <code>boost::unique_ptr</code> and <code>boost::shared_ptr</code>. Now the PVS-Studio analyzer is able to detect errors such as null pointer dereferences when these classes are used.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Tue, 13 Feb 2024 13:50:51 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>mp&#45;units 2.1.0 released &#45;&#45; Mateusz Pusz</title>
      <link>https://isocpp.org//blog/2024/02/mp-units-2.1.0-released</link>
      <guid>https://isocpp.org//blog/2024/02/mp-units-2.1.0-released</guid>
      <description><![CDATA[<p>
	We are happy to announce that mp-units 2.1.0 has been released and is available for download in Conan.</p>
<blockquote>
	<h3>
		<a href="https://mpusz.github.io/mp-units/latest/blog/2023/12/09/mp-units-210-released/">mp-units 2.1.0 released!</a></h3>
	<p>
		by Mateusz Pusz</p>
</blockquote>
<p>
	About the release</p>
<blockquote>
	<p>
		Please check our blog post to read more about the improvements and some, unfortunately, breaking changes.</p>
</blockquote>
<blockquote>
	<p>
		&nbsp;</p>
	<p>
		&nbsp;</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Tue, 06 Feb 2024 19:41:08 +0000</pubDate>
      <dc:creator>Mateusz Pusz</dc:creator>
    </item>

    <item>
      <title>CppDepend 2024.1 Released! &#45; Unveiling New Features and Improvements</title>
      <link>https://isocpp.org//blog/2024/02/cppdepend-2024.1-released-unveiling-new-features-and-improvements</link>
      <guid>https://isocpp.org//blog/2024/02/cppdepend-2024.1-released-unveiling-new-features-and-improvements</guid>
      <description><![CDATA[<p>
	We are thrilled to announce the launch of CppDepend 2024.1, a significant update that introduces a plethora of enhancements and new features to further bolster your C/C++ development workflow.</p>
<blockquote>
	<h3>
		<a href="https://www.cppdepend.com/cppdepend-version-2024">CppDepend 2024.1 Released! - Unveiling New Features and Improvements</a></h3>
</blockquote>
<blockquote>
	<p>
		by the CppDepend Team</p>
</blockquote>
<p>
	From the Article:</p>
<blockquote>
	<p>
		The latest version of CppDepend comes packed with an array of improvements and several new features that are designed to streamline project management, enhance code quality monitoring, and provide deeper insights into code bases. Key highlights of this release include an advanced source explorer, support for C++23/C++20/C++17, Improved Incremental analysis, and much more.</p>
</blockquote>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sun, 04 Feb 2024 13:04:45 +0000</pubDate>
      <dc:creator>CppDepend Team</dc:creator>
    </item>

    <item>
      <title>Top 10 errors in C and C++ projects in 2023</title>
      <link>https://isocpp.org//blog/2023/12/top-10-errors-in-c-and-cpp-projects-in-2023</link>
      <guid>https://isocpp.org//blog/2023/12/top-10-errors-in-c-and-cpp-projects-in-2023</guid>
      <description><![CDATA[<p>
	New Year is coming! It means, according to tradition, it&#39;s time to recall 10 of the most interesting bugs that PVS-Studio found during 2023.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/cpp/1092/?utm_source=firefly&amp;utm_medium=isocpp">Top 10 errors in C and C++ projects in 2023</a></h3>
	<p>
		by Alexey Gorshkov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		In this case, the developers wanted to fill the keyEventList array with zeros. Pay attention to the third parameter &mdash; the number of bytes the developers wanted to fill with zeros. In this case, sizeof(keyEventList) evaluates the pointer size instead of the array size. It depends on the target platform, but most often it&#39;s 4 or 8 bytes. However, the size of the structure is clearly larger than 4 or 8 bytes.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Fri, 22 Dec 2023 12:27:18 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.28: support for ARM, analysis of Unreal Engine projects without Unity Build, and more</title>
      <link>https://isocpp.org//blog/2023/12/pvs-studio-7.28-support-for-arm-analysis-of-unreal-engine-projects-without</link>
      <guid>https://isocpp.org//blog/2023/12/pvs-studio-7.28-support-for-arm-analysis-of-unreal-engine-projects-without</guid>
      <description><![CDATA[<p>
	Now you can run the analyzer on the ARM architecture, analyze .NET 8 projects, and check Unreal Engine projects without Unity Build &mdash; and there is more to come.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1090/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.28: support for ARM, .NET 8, analysis of Unreal Engine projects without Unity Build, and more</a></h3>
	<p>
		by Gleb Aslamov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		When analyzing Unreal Engine projects with PVS-Studio, we often encounter issues with high memory usage and analysis slowdown. They usually arise when individual translation units are combined into a single file (the Unity Build system). Although the merging of translation units may have a positive impact on the compilation time, the large file size may increase the resource requirements for analysis.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Mon, 18 Dec 2023 09:19:14 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>No, C++ static analysis does not have to be painful &#45;&#45; Geoffray Adde</title>
      <link>https://isocpp.org//blog/2023/08/no-cpp-static-analysis-does-not-have-to-be-painful</link>
      <guid>https://isocpp.org//blog/2023/08/no-cpp-static-analysis-does-not-have-to-be-painful</guid>
      <description><![CDATA[<p>
	Static analysis as part of your CI pipeline has long been possible -- but tedious, at best, to setup. Sonar are upending that with an innovative new approach.</p>
<blockquote>
	<h3>
		<a href="https://www.sonarsource.com/blog/no-c-static-analysis-does-not-have-to-be-painful/">No, C++ static analysis does not have to be painful</a></h3>
	<p>
		by Geoffray Adde</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		It seems impossible to offer serious C++ static analysis with a great configuration experience. Users must suffer the pain, or not use it at all.<br />
		Well, at Sonar we believe in making the impossible, possible and so we&#39;ve gone ahead and solved this once and for all!</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sat, 26 Aug 2023 19:27:31 +0000</pubDate>
      <dc:creator>Phil Nash</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.26: running analysis in VS Code and Qt Creator, integration with DefectDojo, and more</title>
      <link>https://isocpp.org//blog/2023/08/pvs-studio-7.26-running-analysis-in-vs-code-and-qt-creator-integration-with</link>
      <guid>https://isocpp.org//blog/2023/08/pvs-studio-7.26-running-analysis-in-vs-code-and-qt-creator-integration-with</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.26 has been released. Now you can run the analysis in plugins for VS Code and Qt Creator; upload the analysis results to DefectDojo, and more. In this note, we&#39;ll take a closer look at these and other enhancements.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1063/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.26: running analysis in VS Code and Qt Creator, integration with DefectDojo, and more</a></h3>
	<p>
		by Sergey Vasiliev</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Now the PVS-Studio plugins for Visual Studio Code and Qt Creator support the analysis of C and C++ projects. Moreover, the plugins support mass suppression of analyzer warnings (with the help of suppress files). This mechanism enables you to hide warnings for legacy code and work only with new warnings. In this way, the integration of the analyzer into the project will be much easier.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Thu, 17 Aug 2023 10:39:55 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>HPX V1.9.1 released &#45;&#45; STE||AR Group</title>
      <link>https://isocpp.org//blog/2023/08/hpx-v1.9.1-released-stellar-group</link>
      <guid>https://isocpp.org//blog/2023/08/hpx-v1.9.1-released-stellar-group</guid>
      <description><![CDATA[<p>
	<a href="https://github.com/STEllAR-GROUP/hpx/"><img alt="" src="https://isocpp.org/files/img/stellar_logo.png" style="margin: 10px; width: 320px; height: 43px; float: right;" /></a>The STE||AR Group has released V1.9.1 of HPX -- A C++ Standard library for Concurrency and Parallelism.</p>
<blockquote>
	<h3>
		<a href="https://hpx.stellar-group.org/2023/08/06/hpx-1-9-1-released/">HPX V1.9.1 Released</a></h3>
</blockquote>
<p>
	We have released HPX 1.9.1 that adds a number of small new features and fixes a handful of problems discovered since the last 1.9.0 release. In particular: we fixed various occasional hanging during startup and shutdown in distributed scenarios. We also added support for zero-copy serialization on the receiving side to the TCP, MPI, and LCI parcelports. Moreover, we have added support for Visual Studio 2019 and GCC using MINGW on Windows, and also support for GCC 13 and Clang 15.0.0. Furthermore, we aligned our header names to their standards counterparts so porting from standard C++ to HPX is now easier. Last but not least, and by adhering to popular demand, we started adding <a href="http://hpx-docs.stellar-group.org/latest/html/manual/migration_guide.html">migration guides</a> for people interested in moving their codes away from other, commonplace parallelization frameworks like OpenMP and MPI. We have also continued to improve our documentation, please have a look <a href="https://hpx-docs.stellar-group.org/latest/html/index.html">here</a>.</p>
<p>
	If you have any questions, comments, or exploits to report you can reach us on IRC or Matrix (#ste||ar on libera.chat) or email us at <a href="http://mailto:hpx-users@stellar-group.org">hpx-users</a>. We depend on your input!</p>
<p>
	You can download the release from our <a href="https://github.com/STEllAR-GROUP/hpx/releases/tag/v1.9.1">releases page</a> or <a href="https://github.com/STEllAR-GROUP/hpx/tree/v1.9.1">check out</a> the v1.9.1 tag using git. A full list of changes can be found in the <a href="https://hpx-docs.stellar-group.org/latest/html/releases/whats_new_1_9_1.html">release notes</a>.</p>
<p>
	HPX is a general-purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++20 Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17, C++20, and C++23 parallel algorithms, including a full set of parallel range-based algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the features related parallelism and concurrency as specified by the upcoming C++23 Standard, the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g., compute clusters) and for heterogeneous systems (e.g., GPUs).</p>
<p>
	HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parallelism and concurrency.</p>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sat, 12 Aug 2023 15:26:56 +0000</pubDate>
      <dc:creator>Hartmut Kaiser</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.25: support for latest versions of Qt Creator, Rider, and more</title>
      <link>https://isocpp.org//blog/2023/06/pvs-studio-7.25-support-for-latest-versions-of-qt-creator-rider-and-more</link>
      <guid>https://isocpp.org//blog/2023/06/pvs-studio-7.25-support-for-latest-versions-of-qt-creator-rider-and-more</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.25 has been released. In this version, we implemented the support of Qt Creator 10 and Rider 2022.2.3 (and higher), updated the libraries used by the analyzer, enhanced the documentation &mdash; and that&#39;s not all!</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1055/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.25: support for latest versions of Qt Creator, Rider, and more</a></h3>
	<p>
		by Nikita Lipilin</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		When checking C++ projects that use MSBuild, PVS-Studio did not use the full power of Intel&#39;s 12th generation processors (for example, i7-12700, i9-12900). Apparently, the analysis processes were running only on energy-saving cores, while the rest remained idle. In the new version of PVS-Studio, the error has been fixed. Now the analyzer fully loads the processors and works much faster.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Thu, 15 Jun 2023 11:40:30 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>HPX V1.9.0 released &#45;&#45; STE||AR Group</title>
      <link>https://isocpp.org//blog/2023/05/hpx-v1.9.0-released-stellar-group</link>
      <guid>https://isocpp.org//blog/2023/05/hpx-v1.9.0-released-stellar-group</guid>
      <description><![CDATA[<p>
	<a href="https://github.com/STEllAR-GROUP/hpx/"><img alt="" src="https://isocpp.org/files/img/stellar_logo.png" style="margin: 10px; width: 320px; height: 43px; float: right;" /></a>The STE||AR Group has released V1.9.0 of HPX -- A C++ Standard library for Concurrency and Parallelism.</p>
<blockquote>
	<h3>
		<a href="https://hpx.stellar-group.org/2023/05/07/hpx-1-9-0-released/">HPX V1.9.0 Released</a></h3>
</blockquote>
<p>
	We have released HPX 1.9.0 &mdash; a major update to our C++ Standard Library for Concurrency and Parallelism. The HPX parallel algorithms now have been fully adapted to C++23, all existing facilities have been adjusted to conform to this version of the Standard as well. We now can proudly announce full conformance to the C++23 concurrency and parallelism facilities. HPX supports all of the parallel algorithms as specified by C++23. We have been able to significantly improve the performance of some of our algorithms. On top of that we support parallel versions of all range-based algorithms and have added more support for explicit vectorization to our algorithms (using std::experimental::simd). Even more work has been done towards implementing P2300 (std::execution) and keeping the underlying senders/receivers facilities in line with the evolving standardization efforts. We have done a lot of refactoring to improve the consistency of our exposed APIs. Last but not least, we have continued to improve our documentation, please have a look <a href="https://hpx-docs.stellar-group.org/latest/html/index.html">here</a>.</p>
<p>
	If you have any questions, comments, or exploits to report you can reach us on IRC or Matrix (#ste||ar on libera.chat) or email us at hpx-users. We depend on your input!</p>
<p>
	You can download the release from our <a href="https://github.com/STEllAR-GROUP/hpx/releases/tag/v1.9.0">releases page</a> or <a href="https://github.com/STEllAR-GROUP/hpx/tree/v1.9.0">check out</a> the v1.9.0 tag using git. A full list of changes can be found in the <a href="https://hpx-docs.stellar-group.org/latest/html/releases/whats_new_1_9_0.html">release notes</a>.</p>
<p>
	HPX is a general-purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++20 Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17, C++20, and C++23 parallel algorithms, including a full set of parallel range-based algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the features related parallelism and concurrency as specified by the upcoming C++23 Standard, the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g., compute clusters) and for heterogeneous systems (e.g., GPUs).</p>
<p>
	HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parallelism and concurrency.</p>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sun, 07 May 2023 15:05:40 +0000</pubDate>
      <dc:creator>Hartmut Kaiser</dc:creator>
    </item>

    <item>
      <title>C++ Brace Pair Colorization and More in Visual Studio &#45;&#45; Mryam Girmay</title>
      <link>https://isocpp.org//blog/2023/02/cpp-brace-pair-colorization-and-more-in-visual-studio</link>
      <guid>https://isocpp.org//blog/2023/02/cpp-brace-pair-colorization-and-more-in-visual-studio</guid>
      <description><![CDATA[<p>
	<img alt="Mryam-G1-96x96.jpg" src="https://isocpp.org/files/img/Mryam-G1-96x96.jpg" style="width: 96px; margin: 10px; float: right;" />Visual Studio has a host of new productivity features, which you can read about in this article.</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/brace-pair-colorization-and-more-in-visual-studio/">C++ Brace Pair Colorization and More in Visual Studio</a></h3>
	<p>
		by Mryam Girmay</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		You can now visually distinguish each set of opening and closing braces for your C++ code making it easier to see your code&rsquo;s scope or find any missing braces. There will be different colors for curly braces, and the paired braces {} will have the same color, which will make it easy to visualize where the braces open and close especially when you have intensely nested codes. The feature is available for C++ today and will be coming to additional languages in subsequent releases.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Thu, 16 Feb 2023 17:55:35 +0000</pubDate>
      <dc:creator>TartanLlama</dc:creator>
    </item>

    <item>
      <title>Debug Linux Console apps in Visual Studio’s Integrated Terminal &#45;&#45; Sinem Akinci</title>
      <link>https://isocpp.org//blog/2023/02/debug-linux-console-apps-in-visual-studios-integrated-terminal</link>
      <guid>https://isocpp.org//blog/2023/02/debug-linux-console-apps-in-visual-studios-integrated-terminal</guid>
      <description><![CDATA[<p>
	Visual Studio now comes with support for debugging interactive console applications directly from the IDE.</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/debug-linux-console-apps-in-visual-studios-integrated-terminal/">Debug Linux Console apps in Visual Studio&rsquo;s Integrated Terminal</a></h3>
	<p>
		By Sinem Akinci</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Now, using the Linux Console embedded in the Integrated Terminal, Visual Studio supports a fully functional terminal-like experience when debugging Linux applications. This new Linux Console emulates an xterm and can support application screen manipulation; for example, writing screen formatting control characters to stdout or using the ncurses library. Additionally, there is support for vt sequences and keyboard shortcuts such as Ctrl+C application interruption.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Thu, 16 Feb 2023 17:54:57 +0000</pubDate>
      <dc:creator>TartanLlama</dc:creator>
    </item>

    <item>
      <title>VS Code C++ Extension January Update: Create Definitions and Declarations &#45;&#45; Alexandra Kemper</title>
      <link>https://isocpp.org//blog/2023/02/vs-code-cpp-extension-january-update-create-definitions-and-declarations</link>
      <guid>https://isocpp.org//blog/2023/02/vs-code-cpp-extension-january-update-create-definitions-and-declarations</guid>
      <description><![CDATA[<p>
	You can now create declarations from definitions and vice versa in Visual Studio Code.</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/vs-code-c-extension-january-update-create-definitions-and-declarations/">VS Code C++ Extension January Update: Create Definitions and Declarations</a></h3>
	<p>
		by Alexandra Kemper</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Starting with the 1.13.6 version of the C++ Extension in VS Code, we are happy to share a much requested feature: Auto creation of definitions or declarations for functions! You can now quickly create a declaration in a header file for a function you only have a definition for, or vice versa. These generated definitions and declarations already include all function arguments, so no need for constant copying, pasting, and double checking.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Wed, 15 Feb 2023 18:54:07 +0000</pubDate>
      <dc:creator>TartanLlama</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio in 2022</title>
      <link>https://isocpp.org//blog/2023/01/pvs-studio-in-2022</link>
      <guid>https://isocpp.org//blog/2023/01/pvs-studio-in-2022</guid>
      <description><![CDATA[<p>
	It&#39;s January 2023, which means it&#39;s time to look back at our achievements in 2022. In this article, we&#39;ll tell you what we accomplished and show you what features appeared in PVS-Studio in 2022. Let&#39;s go.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1025/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio in 2022</a></h3>
	<p>
		by Polina Alekseeva</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Speaking of cross-platform. As of now, the analyzer runs on Windows, Linux, and macOS on the x86_64 architecture. It is currently impossible to run the analyzer natively on the same operating systems under ARM (except for C and C++ analyzer on ARM-based macOS: you can run it via Rosetta). We&#39;re wondering if there are many people among our readers who want to natively use the analyzer on ARM. How critical is the build and analysis of projects on the ARM architecture for you?</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Thu, 19 Jan 2023 16:34:59 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>Top 10 bugs found in C++ projects in 2022</title>
      <link>https://isocpp.org//blog/2022/12/top-10-bugs-found-in-cpp-projects-in-2022</link>
      <guid>https://isocpp.org//blog/2022/12/top-10-bugs-found-in-cpp-projects-in-2022</guid>
      <description><![CDATA[<p>
	New Year is coming! It means, according to tradition, it&#39;s time to recall 10 of the most interesting warnings that PVS-Studio found during 2022.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/cpp/1021/?utm_source=firefly&amp;utm_medium=isocpp">Top 10 bugs found in C++ projects in 2022</a></h3>
	<p>
		by Vladislav Stolyarov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Here the analyzer detected that a function, marked as noexcept, calls a function that throws an exception. If an exception arises from the nothrow function&#39;s body, the nothrow function calls std::terminate, and the program crashes. It could make sense to wrap the setName function in the function-try-block and process the exceptional situation there &mdash; or one could use something else instead of generating the exception.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Thu, 29 Dec 2022 16:43:09 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>libstdc++ gets C++20 chrono</title>
      <link>https://isocpp.org//blog/2022/12/libstdcpp-gets-c20-chrono</link>
      <guid>https://isocpp.org//blog/2022/12/libstdcpp-gets-c20-chrono</guid>
      <description><![CDATA[<p>
	<img alt="Screenshot_2022-12-24_094211.png" src="https://isocpp.org/files/img/Screenshot_2022-12-24_094211.png" style="width: 400px; margin: 10px; float: right;" />Imagine Jonathan Wakely in a red suit with his helper elves, delivering presents:</p>
<blockquote>
	<h3>
		<a href="https://www.reddit.com/r/cpp/comments/zt1o9k/libstdc13_gets_c20_chrono/">libstdc++ gets C++20 &lt;chrono&gt;</a></h3>
</blockquote>
<p>
	As seen on Reddit:</p>
<blockquote>
	<p>
		It looks like Jonathan Wakely has just today contributed a huge amount of effort towards&nbsp;<code>&lt;chrono&gt;</code>.</p>
	<p>
		He&#39;s added the&nbsp;<a href="https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=9fc61d45fa15fdd3b084d30998ecda164af33e95" rel="noopener nofollow ugc" target="_blank">time zones, leap seconds, all that good stuff</a>.</p>
	<p>
		He&#39;s even added&nbsp;<a href="https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=d33a250f708e88c6cb447b6d0a202590fbc0b4b6" rel="noopener nofollow ugc" target="_blank">GDB pretty printers</a>&nbsp;for inevitable date time debugging!</p>
	<p>
		And these features are supported in&nbsp;<a href="https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=f99b94865fa629cc2cc937128a812b6a23038446" rel="noopener nofollow ugc" target="_blank">&lt;format&gt;</a>, which libstdc++13 has, if you weren&#39;t already aware. He&#39;s also made many other various improvements. Lets give a round of applause to Jonathan Wakely!</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sat, 24 Dec 2022 17:35:14 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>High&#45;confidence Lifetime Checks in Visual Studio version 17.5 Preview 2 &#45;&#45; Gabor Horvath</title>
      <link>https://isocpp.org//blog/2022/12/high-confidence-lifetime-checks-in-visual-studio-version-17.5-preview-2-gab</link>
      <guid>https://isocpp.org//blog/2022/12/high-confidence-lifetime-checks-in-visual-studio-version-17.5-preview-2-gab</guid>
      <description><![CDATA[<p>
	<img alt="" src="https://devblogs.microsoft.com/cppblog/wp-content/uploads/sites/9/2021/08/gabor_photo-96x96.jpg" style="width: 96px; height: 96px; float: right;" />More safety please:</p>
<h3>
	<a href="https://devblogs.microsoft.com/cppblog/high-confidence-lifetime-checks-in-visual-studio-version-17-5-preview-2/"><strong>High-confidence Lifetime Checks in Visual Studio version 17.5 Preview 2</strong></a></h3>
<p style="margin-left:.5in;">
	by Gabor Horvath</p>
<p>
	From the article:</p>
<p style="margin-left:.5in;">
	The C++ Core Guidelines&rsquo; Lifetime Profile, aims to detect lifetime problems, like dangling pointers and references, in C++ code. ... Lately, there has been an increased push in the C++ community to introduce lifetime-related safety features, which has led us to revisit the lifetime analysis in MSVC.</p>
<p style="margin-left:.5in;">
	We spent the last couple of months looking into the results of using the lifetime analysis on real world code. This blog post summarizes our experience and the improvements we made along the way. The biggest change is the introduction of a new set of warnings. These warnings are the high-confidence versions of the existing warnings. Users who want less noise can enable only the high-confidence warnings, while users who want more rigorous checks at the cost of noise can enable both the old and the new warnings. As of 17.5, the high-confidence warnings are still experimental, but depending on the feedback we might include them in some of the recommended profiles in future versions...</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Sat, 17 Dec 2022 22:01:16 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>Boost 1.81.0: Major release now available</title>
      <link>https://isocpp.org//blog/2022/12/boost-1.81.0-major-release-now-available</link>
      <guid>https://isocpp.org//blog/2022/12/boost-1.81.0-major-release-now-available</guid>
      <description><![CDATA[<p>
	Just in time for the holidays, a major new <strike>Taylor Swift album</strike>&nbsp;<strong>Boost library release</strong> just dropped:</p>
<blockquote>
	<h3>
		<a href="https://www.boost.org/users/history/version_1_81_0.html"><img alt="" src="https://www.boost.org/doc/libs/1_52_0/boost.png" style="width: 277px; height: 86px; float: right;" />Boost verison 1.81.0 released</a></h3>
	<p>
		Release managers: Marshall Clow and Glen Fernandes</p>
</blockquote>
<p>
	From the announcement:</p>
<blockquote>
	<div id="version_1_81_0.new_libraries">
		<h3 style="clear:both;">
			New Libraries</h3>
		<ul>
			<li>
				<div>
					<a href="https://www.boost.org/libs/url/">URL</a>:A library for parsing, modifying, and printing URLs using only C++11, from Vinnie Falco and Alan de Freitas. Features include fast compilation, strong invariants, and strict compliance using a memory-friendly approach.</div>
			</li>
		</ul>
	</div>
	<div id="version_1_81_0.updated_libraries">
		<h3 style="clear:both;">
			Updated Libraries</h3>
		<ul>
			<li>
				<div>
					<a href="https://www.boost.org/libs/asio/">Asio</a>:
					<ul>
						<li>
							<div>
								Added the&nbsp;<code>consign</code>&nbsp;completion token adapter, which can be used to attach additional values to a completion handler.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>any_completion_handler&lt;&gt;</code>, which can be used to type-erase completion handlers.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>experimental::co_composed</code>&nbsp;to enable lightweight implementations of user-defined asynchronous operations using C++20 coroutines.</div>
						</li>
						<li>
							<div>
								Add range-based&nbsp;<code>experimental::make_parallel_group()</code>&nbsp;overloads.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>any_completion_executor</code>, a type-erased wrapper for executors that are associated with completion handlers.</div>
						</li>
						<li>
							<div>
								Added missing&nbsp;<code>context</code>&nbsp;query to use_future&#39;s executor.</div>
						</li>
						<li>
							<div>
								Added nothrow constructor overloads to&nbsp;<code>execution::any_executor&lt;&gt;</code>&nbsp;and&nbsp;<code>any_io_executor</code>.</div>
						</li>
						<li>
							<div>
								Optimised representation of empty&nbsp;<code>execution::any_executor</code>&nbsp;objects to improve the performance of copy and move operations.</div>
						</li>
						<li>
							<div>
								Added an&nbsp;<code>associated_cancellation_slot</code>&nbsp;specialisation for&nbsp;<code>std::reference_wrapper</code>.</div>
						</li>
						<li>
							<div>
								Changed I/O objects to return their executors by const reference.</div>
						</li>
						<li>
							<div>
								Changed associated to use deduced return types for all two-argument&nbsp;<code>get</code>&nbsp;functions.</div>
						</li>
						<li>
							<div>
								Fixed&nbsp;<code>spawn</code>&nbsp;implementation to catch unhandled exceptions and rethrow them outside of the spawned "thread".</div>
						</li>
						<li>
							<div>
								Fixed&nbsp;<code>spawn</code>&nbsp;to ensure the completion handler is dispatched through the correct executor.</div>
						</li>
						<li>
							<div>
								Fixed cleanup of of terminal-state&nbsp;<code>spawn</code>&nbsp;"thread" objects.</div>
						</li>
						<li>
							<div>
								Fixed&nbsp;<code>spawn</code>&nbsp;and&nbsp;<code>co_spawn</code>&nbsp;implementations to dispatch cancellation handlers on the correct executor.</div>
						</li>
						<li>
							<div>
								Changed semantics of &#39;dispatch&#39; to mean the executor is used as-is.</div>
						</li>
						<li>
							<div>
								Deprecated the&nbsp;<code>execution::execute</code>&nbsp;customisation point and sender/receiver facilities.</div>
						</li>
						<li>
							<div>
								Added a C++11&nbsp;<code>parallel_group</code>&nbsp;example.</div>
						</li>
						<li>
							<div>
								Fixed example code to not use the deprecated&nbsp;<code>resolve</code>&nbsp;conversions.</div>
						</li>
						<li>
							<div>
								Fixed an ambiguity in&nbsp;<code>experimental::channel_traits</code>&nbsp;specialisations.</div>
						</li>
						<li>
							<div>
								Added a specialised channel implementation for the for&nbsp;<code>R(error_code)</code>&nbsp;signature.</div>
						</li>
						<li>
							<div>
								Made&nbsp;<code>cancelled()</code>&nbsp;public on the&nbsp;<code>async_compose</code>&nbsp;&#39;self&#39; object.</div>
						</li>
						<li>
							<div>
								Added io_executor_type and get_io_executor to the&nbsp;<code>async_compose</code>&nbsp;&#39;self&#39; object.</div>
						</li>
						<li>
							<div>
								Fixed implementation of&nbsp;<code>release()</code>&nbsp;for Windows overlapped handles.</div>
						</li>
						<li>
							<div>
								Enabled deferred awaiting for&nbsp;<code>experimental::coro</code>, regularised&nbsp;<code>experimental::use_coro</code>, and fixed allocator handling.</div>
						</li>
						<li>
							<div>
								Cleaned up&nbsp;<code>experimental::promise</code>&nbsp;and made it an asynchronous operation object.</div>
						</li>
						<li>
							<div>
								Constrained&nbsp;<code>post</code>/<code>defer</code>&nbsp;overloads on ability to require&nbsp;<code>blocking.never</code>.</div>
						</li>
						<li>
							<div>
								Changed descriptor implementation to fall back to&nbsp;<code>fcntl</code>&nbsp;if&nbsp;<code>ioctl</code>&nbsp;fails with&nbsp;<code>ENOTTY</code>&nbsp;when setting non-blocking mode.</div>
						</li>
						<li>
							<div>
								Fixed Xcode deprecation warnings related to use of&nbsp;<code>sprintf</code>.</div>
						</li>
						<li>
							<div>
								Fixed the arguments passed to&nbsp;<code>select_reactor::run</code>&nbsp;when it is run on an internal thread.</div>
						</li>
						<li>
							<div>
								Fixed compilation errors when&nbsp;<code>BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING</code>&nbsp;is defined.</div>
						</li>
						<li>
							<div>
								Updated detection of C++20 coroutine support on clang 14 and later.</div>
						</li>
						<li>
							<div>
								Changed standard library feature detection to always enable&nbsp;<code>std::invoke_result</code>&nbsp;when targeting C++17 or later.</div>
						</li>
						<li>
							<div>
								Fixed detection of return type deduction with MSVC.</div>
						</li>
						<li>
							<div>
								Updated the asynchronous operation requirements to relax the requirements on the associated executor.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<tt>io_uring</tt>&nbsp;to the implementation notes.</div>
						</li>
						<li>
							<div>
								Consult the&nbsp;<a href="https://www.boost.org/doc/libs/1_81_0/doc/html/boost_asio/history.html">Revision History</a>&nbsp;for further details.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/beast/">Beast</a>:
					<ul>
						<li>
							<div>
								Add&nbsp;<code>buffers_generator</code></div>
						</li>
						<li>
							<div>
								Add&nbsp;<code>beast::http::message_generator</code></div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>buffer_ref</code>, so beast buffers can be used with asio.</div>
						</li>
						<li>
							<div>
								Support for per-operation cancellation</div>
						</li>
						<li>
							<div>
								C++20 awaitable examples.</div>
						</li>
						<li>
							<div>
								websocket per-message compression options</div>
						</li>
						<li>
							<div>
								websocket timeout option api</div>
						</li>
						<li>
							<div>
								multiple content length error</div>
						</li>
						<li>
							<div>
								Support for default-completion and rebind</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/container_hash/">Container Hash</a>:
					<ul>
						<li>
							<div>
								Major update.</div>
						</li>
						<li>
							<div>
								The specializations of&nbsp;<code>boost::hash</code>&nbsp;have been removed; it now always calls&nbsp;<code>hash_value</code>.</div>
						</li>
						<li>
							<div>
								Support for&nbsp;<code>BOOST_HASH_NO_EXTENSIONS</code>&nbsp;has been removed. The extensions are always enabled.</div>
						</li>
						<li>
							<div>
								All standard containers are now supported. This includes&nbsp;<code>std::forward_list</code>&nbsp;and the unordered associative containers.</div>
						</li>
						<li>
							<div>
								User-defined containers (types that have&nbsp;<code>begin()</code>&nbsp;and&nbsp;<code>end()</code>&nbsp;member functions that return iterators) are now supported out of the box.</div>
						</li>
						<li>
							<div>
								Described structs and classes (those annotated with&nbsp;<code>BOOST_DESCRIBE_STRUCT</code>&nbsp;or&nbsp;<code>BOOST_DESCRIBE_CLASS</code>) are now supported out of the box.</div>
						</li>
						<li>
							<div>
								<code>hash_combine</code>&nbsp;has been improved.</div>
						</li>
						<li>
							<div>
								The performance (and quality, as a result of the above change) of string hashing has been improved.&nbsp;<code>boost::hash</code>&nbsp;for strings now passes SMHasher in 64 bit mode.</div>
						</li>
						<li>
							<div>
								The documentation has been substantially revised to reflect the changes.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/core/">Core</a>:
					<ul>
						<li>
							<div>
								<code>empty_value</code>&nbsp;members are now marked as&nbsp;<code>constexpr</code>.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>fclose_deleter</code>, a deleter that calls&nbsp;<code>std::fclose</code>&nbsp;on a pointer to&nbsp;<code>std::FILE</code>.</div>
						</li>
						<li>
							<div>
								Bit manipulation utilities in&nbsp;<code>boost/core/bit.hpp</code>&nbsp;now explicitly require unsigned integers on input. (<a href="https://github.com/boostorg/core/issues/129">#129</a>)</div>
						</li>
						<li>
							<div>
								<code>bit_width</code>&nbsp;now returns&nbsp;<code>int</code>&nbsp;instead of a value of the input argument type. This follows resolution of&nbsp;<a href="https://cplusplus.github.io/LWG/issue3656">LWG3656</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/describe/">Describe</a>:
					<ul>
						<li>
							<div>
								To allow the inclusion of&nbsp;<code>enumerators.hpp</code>,&nbsp;<code>bases.hpp</code>, and&nbsp;<code>members.hpp</code>&nbsp;when the option&nbsp;<code>-pedantic</code>&nbsp;is used, the invocation of&nbsp;<code>BOOST_DESCRIBE_ENUM</code>&nbsp;has been moved from&nbsp;<code>modifiers.hpp</code>&nbsp;into a separate header,&nbsp;<code>modifier_description.hpp</code>. As a consequence,&nbsp;<code>modifiers.hpp</code>&nbsp;no longer includes&nbsp;<code>enum.hpp</code>. Code that has been relying on this implicit inclusion may fail, and will need to be fixed to include&nbsp;<code>enum.hpp</code>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/dll/">DLL</a>:
					<ul>
						<li>
							<div>
								Fixed&nbsp;<code>path_from_handle</code>&nbsp;implementation for Windows platforms, thanks to @SaltfishAmi for the bug report&nbsp;<a href="https://github.com/apolukhin/Boost.DLL/issues/57">57</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:
					<ul>
						<li>
							<div>
								Deprecated:&nbsp;<code>path</code>&nbsp;construction, assignment and appending from containers of characters, such as&nbsp;<code>std::vector&lt;char&gt;</code>&nbsp;or&nbsp;<code>std::list&lt;wchar_t&gt;</code>, is deprecated in&nbsp;v3&nbsp;and removed in&nbsp;v4. Please use string types or iterators instead.</div>
						</li>
						<li>
							<div>
								Deprecated:&nbsp;<code>boost/filesystem/path_traits.hpp</code>&nbsp;header is deprecated and will be removed in a future release. The header contained implementation details of&nbsp;<code>path</code>&nbsp;and should not be used in user&#39;s code.</div>
						</li>
						<li>
							<div>
								Previously deprecated APIs will now generate compilation warnings on use. To suppress these warnings,&nbsp;<code>BOOST_FILESYSTEM_ALLOW_DEPRECATED</code>&nbsp;macro can be defined when compiling user&#39;s code.</div>
						</li>
						<li>
							<div>
								Fixed compilation due to a missing include on POSIX systems that do not support&nbsp;<code>*at</code>&nbsp;APIs. (<a href="https://github.com/boostorg/filesystem/issues/250">#250</a>)</div>
						</li>
						<li>
							<div>
								On Windows prior to 10, added a workaround for network share filesystem that produces&nbsp;<code>ERROR_INVALID_PARAMETER</code>&nbsp;when constructing directory iterators. (<a href="https://github.com/boostorg/filesystem/pull/246">PR#246</a>,&nbsp;<a href="https://github.com/boostorg/filesystem/issues/245">#245</a>)</div>
						</li>
						<li>
							<div>
								On Windows, fixed&nbsp;<code>weakly_canonical</code>&nbsp;failing with an&nbsp;<code>ERROR_INVALID_FUNCTION</code>&nbsp;error code if the path started with the "\\?\" prefix. (<a href="https://github.com/boostorg/filesystem/issues/247">#247</a>)</div>
						</li>
						<li>
							<div>
								Added support for&nbsp;<code>std::string_view</code>,&nbsp;<code>boost::string_view</code>&nbsp;and&nbsp;<code>boost::container::string</code>&nbsp;(as well as respective&nbsp;<code>wchar_t</code>&nbsp;counterparts) in&nbsp;<code>path</code>&nbsp;constructors, assignment and appending operations. (<a href="https://github.com/boostorg/filesystem/issues/208">#208</a>)</div>
						</li>
						<li>
							<div>
								<code>path</code>&nbsp;constructors, assignment and appending operations taking a pair of iterators will no longer accept iterators with value types that are not one of the supported path character types.</div>
						</li>
						<li>
							<div>
								On Windows, improved compatibility of&nbsp;<code>directory_iterator</code>&nbsp;with various mounted filesystems and Wine releases prior to 7.21. (<a href="https://github.com/boostorg/filesystem/issues/255">#255</a>,&nbsp;<a href="https://github.com/boostorg/filesystem/issues/266">#266</a>)</div>
						</li>
						<li>
							<div>
								On Windows, deduplicated files are now reported as regular files rather than reparse files. (<a href="https://github.com/boostorg/filesystem/issues/262">#262</a>)</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/fusion/">Fusion</a>:
					<ul>
						<li>
							<div>
								Added&nbsp;<code>fusion::identity_view</code>&nbsp;(<a href="https://github.com/boostorg/fusion/pull/240">PR#240</a>)</div>
						</li>
						<li>
							<div>
								Added support for associative sequences on&nbsp;<code>fusion::transform_view</code>&nbsp;(<a href="https://github.com/boostorg/fusion/pull/239">PR#239</a>)</div>
						</li>
						<li>
							<div>
								Fixed compilation for the case when&nbsp;<code>fusion::reverse_view</code>&nbsp;used with an associative sequence (<a href="https://github.com/boostorg/fusion/pull/237">PR#237</a>)</div>
						</li>
						<li>
							<div>
								Fixed Clang 13 -Wdeprecated-copy warnings (<a href="https://github.com/boostorg/fusion/pull/261">PR#261</a>)</div>
						</li>
						<li>
							<div>
								A small dependency reorganization. Now&nbsp;<code>boost::ref</code>&nbsp;and&nbsp;<code>boost::noncopyable</code>&nbsp;are used from Boost.Core (<a href="https://github.com/boostorg/fusion/pull/249">PR#249</a>)</div>
						</li>
						<li>
							<div>
								Added CI testing on Linux and MacOS for clang and gcc, fixed CI testing on Windows (<a href="https://github.com/boostorg/fusion/pull/245">PR#245</a>,&nbsp;<a href="https://github.com/boostorg/fusion/pull/236">PR#236</a>)</div>
						</li>
						<li>
							<div>
								Improved docs and fixed typos (<a href="https://github.com/boostorg/fusion/issues/234">#234</a>,&nbsp;<a href="https://github.com/boostorg/fusion/pull/235">PR#235</a>,&nbsp;<a href="https://github.com/boostorg/fusion/pull/238">PR#238</a>)</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/geometry/">Geometry</a>:
					<ul>
						<li>
							<div>
								Solved issues
								<ul>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1048">#1048</a>&nbsp;Index: Fix dangling references when Indexable is returned by value by IndexableGetter</div>
									</li>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1076">#1076</a>&nbsp;Union: in rare cases it might miss one polygon</div>
									</li>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1081">#1081</a>&nbsp;Union: due to precision it might miss interior rings</div>
									</li>
								</ul>
							</div>
						</li>
						<li>
							<div>
								Bugfixes
								<ul>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1063">#1063</a>&nbsp;Intersection: fix a bug in intersection of simple spherical polygons</div>
									</li>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1064">#1064</a>&nbsp;Formulas: fix a consistency issue in geodesic direct formulas</div>
									</li>
									<li>
										<div>
											<a href="https://github.com/boostorg/geometry/issues/1088">#1088</a>&nbsp;Point: Fix regression for custom point types</div>
									</li>
									<li>
										<div>
											Various fixes for missing include files, warnings, C++20 compilation errors and documentation</div>
									</li>
								</ul>
							</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/histogram/">Histogram</a>:
					<ul>
						<li>
							<div>
								Major update.</div>
						</li>
						<li>
							<div>
								Added new&nbsp;<code>accumulators::fraction</code>&nbsp;to compute fractions, their variance, and confidence intervals</div>
						</li>
						<li>
							<div>
								Added interval computers for fractions:&nbsp;<code>utility::clopper_pearson</code>,&nbsp;<code>utility::wilson_interval</code>,&nbsp;<code>utility::jeffreys_interval</code>,&nbsp;<code>utility::wald_interval</code>&nbsp;which can compute intervals with arbitrary confidence level</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>utility::confidence_level</code>&nbsp;and&nbsp;<code>utility::deviation</code>&nbsp;types to pass confidence levels as probabilities or in multiples of standard deviation for all interval computers, respectively</div>
						</li>
						<li>
							<div>
								Fixed internal&nbsp;<code>sub_array</code>&nbsp;and&nbsp;<code>span</code>&nbsp;in C++20</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/iterator/">Iterator</a>:
					<ul>
						<li>
							<div>
								<code>function_output_iterator</code>&nbsp;now supports perfect forwarding of the assigned values to the wrapped function object. (<a href="https://github.com/boostorg/iterator/pull/73">PR#73</a>)</div>
						</li>
						<li>
							<div>
								Fixed compilation of constructing a&nbsp;<code>function_input_iterator</code>&nbsp;from result of post-incrementing another&nbsp;<code>function_input_iterator</code>. (<a href="https://github.com/boostorg/iterator/issues/75">#75</a>)</div>
						</li>
						<li>
							<div>
								The result of post-incrementing an iterator based on&nbsp;<code>iterator_facade</code>&nbsp;now supports&nbsp;<code>operator-&gt;</code>.&nbsp;<code>(it++)-&gt;foo</code>&nbsp;is equivalent to&nbsp;<code>(*it++).foo</code>, which was supported before.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/json/">JSON</a>:
					<ul>
						<li>
							<div>
								Added&nbsp;<code>object::stable_erase</code>.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>parse</code>&nbsp;overload for&nbsp;<code>std::istream</code>&nbsp;and&nbsp;<code>operator&gt;&gt;</code>&nbsp;for&nbsp;<code>value</code>.</div>
						</li>
						<li>
							<div>
								Added rvalue ref-qualified accessors for&nbsp;<code>value</code>.</div>
						</li>
						<li>
							<div>
								Conversion traits were redesigned.</div>
						</li>
						<li>
							<div>
								Added conversion support for described classes and enums,&nbsp;<code>std::optional</code>,&nbsp;<code>std::variant</code>, and null-like types (including&nbsp;<code>std::nullptr_t</code>,&nbsp;<code>std::nullopt_t</code>, and&nbsp;<code>std::monotype</code>).</div>
						</li>
						<li>
							<div>
								Added non-throwing conversion from&nbsp;<code>value</code>&nbsp;to user types.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:
					<ul>
						<li>
							<div>
								Fixed compilation while casting volatile arithmetic types. Thanks to Giovanni Cerretani for the bug report&nbsp;<a href="https://github.com/boostorg/lexical_cast/issues/50">#50</a>.</div>
						</li>
						<li>
							<div>
								Removed usage of deprecated headers. Thanks to Michael Ford for the PR&nbsp;<a href="https://github.com/boostorg/lexical_cast/pull/53">PR#53</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/locale/">Locale</a>:
					<ul>
						<li>
							<div>
								Major update with some breaking changes.</div>
						</li>
						<li>
							<div>
								C++11 support is now required, support for C++03 and earlier is dropped</div>
						</li>
						<li>
							<div>
								Some enums have been converted to enum classes - Avoids name clashes</div>
						</li>
						<li>
							<div>
								Replace&nbsp;<code>-sICU_LINK_LOCALE</code>&nbsp;&amp;&nbsp;<code>-sICU_LINK</code>&nbsp;by fine-grained configuration options as done in Boost.RegEx</div>
						</li>
						<li>
							<div>
								Fix detection of libiconv allowing Boost.Locale to be build (again) on some platforms</div>
						</li>
						<li>
							<div>
								Remove use of and support for&nbsp;<code>std::auto_ptr</code></div>
						</li>
						<li>
							<div>
								Make the&nbsp;<code>codecvt</code>&nbsp;using&nbsp;<code>wchar_t</code>&nbsp;on Windows assume/use UTF-16 enconding</div>
						</li>
						<li>
							<div>
								Performance improvements: Make&nbsp;<code>basic_format</code>,&nbsp;<code>date_time</code>&nbsp;&amp;&nbsp;<code>hold_ptr</code>&nbsp;movable, Fix use of format cache</div>
						</li>
						<li>
							<div>
								Make Boost.Locale compatible with more ICU versions (especially the tests)</div>
						</li>
						<li>
							<div>
								Fix RTTI definitions for some classes (visibility issues)</div>
						</li>
						<li>
							<div>
								Fix compatibility of the ICU backend with some libc++ versions</div>
						</li>
						<li>
							<div>
								Fix return value of some operators to correctly return non-const&nbsp;<code>*this</code></div>
						</li>
						<li>
							<div>
								Fix int-overflow on negative roll of years in&nbsp;<code>date_time</code></div>
						</li>
						<li>
							<div>
								Handle or suppress many warnings which makes the build log cleaner</div>
						</li>
						<li>
							<div>
								Add support for more Windows codepages</div>
						</li>
						<li>
							<div>
								Fix support for Windows codepages like ISO-2022-JP</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/nowide/">Nowide</a>:
					<ul>
						<li>
							<div>
								Fix build failure of tests on MSVC</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:
					<ul>
						<li>
							<div>
								The library&nbsp;does not use COM initialization any more. Thanks to Alex Guteniev for the bug report, clarifications and PR&nbsp;<a href="https://github.com/boostorg/stacktrace/pull/123">PR#123</a>!</div>
						</li>
						<li>
							<div>
								The library now may use&nbsp;<code>BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE</code>&nbsp;macro value while detecting the libbacktrace availability in b2, thanks to Ben Gemmill for the bug report&nbsp;<a href="https://github.com/boostorg/stacktrace/issues/115">#115</a>.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>BOOST_STACKTRACE_BACKTRACE_FORCE_STATIC</code>&nbsp;macro to force a single backtrace_state static instance while using the libbacktrace. Thanks to the Rasmus Thomsen for the bug report&nbsp;<a href="https://github.com/boostorg/stacktrace/issues/118">#118</a>!</div>
						</li>
						<li>
							<div>
								Avoid unresolved references when including only the&nbsp;<code>boost/stacktrace/stacktrace.hpp</code>&nbsp;header. Thanks to the Long Deng for the bug report&nbsp;<a href="https://github.com/boostorg/stacktrace/issues/116">#116</a>.</div>
						</li>
						<li>
							<div>
								Optimized stacktrace printing by not calling&nbsp;<code>strlen</code>&nbsp;on Windows platforms. Thanks to Alex Guteniev for the bug report&nbsp;<a href="https://github.com/boostorg/stacktrace/issues/122">#122</a></div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/pfr/">PFR</a>:
					<ul>
						<li>
							<div>
								Improved detection of aggregate initializables in C++14 mode, thanks to Denis Mikhailov for the PR&nbsp;<a href="https://github.com/boostorg/pfr/pull/97">PR#97</a>.</div>
						</li>
						<li>
							<div>
								Suppress clang-tidy warnings, thanks to Alexander Malkov for the PRs&nbsp;<a href="https://github.com/boostorg/pfr/pull/109">PR#109</a>,&nbsp;<a href="https://github.com/boostorg/pfr/pull/104">PR#104</a>.</div>
						</li>
						<li>
							<div>
								Use fold expressions if they are supported by the compiler. Thanks to Jean-Micha&euml;l Celerier for the PR&nbsp;<a href="https://github.com/boostorg/pfr/pull/96">PR#96</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/stl_interfaces/">STLInterfaces</a>:
					<ul>
						<li>
							<div>
								Fix two ill-formed&nbsp;<code>iterator_interface</code>&nbsp;operators in pre-C++20 iterators with a&nbsp;<code>const</code>&nbsp;<code>value_type</code>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/system/">System</a>:
					<ul>
						<li>
							<div>
								The macro&nbsp;<code>BOOST_SYSTEM_DISABLE_THREADS</code>&nbsp;can now be defined to disable the use of&nbsp;<code>&lt;mutex&gt;</code>&nbsp;(e.g. on single-threaded libstdc++).</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>value_type</code>,&nbsp;<code>error_type</code>,&nbsp;<code>in_place_value</code>,&nbsp;<code>in_place_error</code>&nbsp;to&nbsp;<code>result&lt;&gt;</code>.</div>
						</li>
						<li>
							<div>
								Added&nbsp;<code>emplace</code>&nbsp;to&nbsp;<code>result&lt;&gt;</code>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/unordered/">Unordered</a>:
					<ul>
						<li>
							<div>
								Major update.</div>
						</li>
						<li>
							<div>
								Added fast containers&nbsp;<code>boost::unordered_flat_map</code>&nbsp;and&nbsp;<code>boost::unordered_flat_set</code>&nbsp;based on open addressing.</div>
						</li>
						<li>
							<div>
								Added CTAD deduction guides for all containers.</div>
						</li>
						<li>
							<div>
								Added missing constructors as specified in&nbsp;<a href="https://cplusplus.github.io/LWG/issue2713">LWG issue 2713</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/variant/">Variant</a>:
					<ul>
						<li>
							<div>
								Avoid recursive inclusion of headers, thanks to Nathan Sidwell for the bug report&nbsp;<a href="https://github.com/boostorg/variant/issues/101">#101</a>.</div>
						</li>
						<li>
							<div>
								Removed usage of deprecated headers, thanks to Michael Ford for the PR&nbsp;<a href="https://github.com/boostorg/variant/pull/96">PR#96</a>.</div>
						</li>
						<li>
							<div>
								Fixed compilation on clang in C++23 mode, thanks to Ed Catmur for the PR&nbsp;<a href="https://github.com/boostorg/variant/pull/98">PR#98</a>.</div>
						</li>
					</ul>
				</div>
			</li>
			<li>
				<div>
					<a href="https://www.boost.org/libs/variant2/">Variant2</a>:
					<ul>
						<li>
							<div>
								Added support for&nbsp;<code>boost::json::value_from</code>&nbsp;and&nbsp;<code>boost::json::value_to</code>.</div>
						</li>
					</ul>
				</div>
			</li>
		</ul>
	</div>
</blockquote>
<p>
	&nbsp;</p>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Fri, 16 Dec 2022 20:30:40 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.22: Visual Studio Code, Qt Creator, .NET 7</title>
      <link>https://isocpp.org//blog/2022/12/pvs-studio-7.22-visual-studio-code-qt-creator-.net-7</link>
      <guid>https://isocpp.org//blog/2022/12/pvs-studio-7.22-visual-studio-code-qt-creator-.net-7</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.22 has been released. It includes plugins for Visual Studio Code and Qt Creator, support of .NET 7 projects analysis, enhanced Best Warnings filter and new diagnostic rules.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1016/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio 7.22: Visual Studio Code, Qt Creator, .NET 7</a></h3>
	<p>
		by Sergey Vasiliev</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		New plugins provide even more options for cross-platform work. Now you can use them to work with logs: view warnings, filter them, sort them in a grid, etc. You can&#39;t run the analysis yet &mdash; we plan to add this feature in future releases.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Fri, 16 Dec 2022 08:01:24 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio and RPCS3: the best warnings in one click</title>
      <link>https://isocpp.org//blog/2022/12/pvs-studio-and-rpcs3-the-best-warnings-in-one-click</link>
      <guid>https://isocpp.org//blog/2022/12/pvs-studio-and-rpcs3-the-best-warnings-in-one-click</guid>
      <description><![CDATA[<p>
	Best Warnings &mdash; the analyzer&#39;s mode that displays 10 most interesting warnings in the output window. We invite you to take a look at the updated Best Warnings mode on the example of the RPCS3 project check.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/cpp/1014/?utm_source=firefly&amp;utm_medium=isocpp">PVS-Studio and RPCS3: the best warnings in one click</a></h3>
	<p>
		by Alexander Kurenev</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Best Warnings is a special mechanism for the first acquaintance with the PVS-Studio static analyzer. The full analyzer&#39;s log can contain thousands of warnings. Therefore, if you want to evaluate the work of the analyzer and not waste time and effort on viewing a large report that was issued by a not yet configured analyzer, use the Best Warnings mechanism. Open the analyzer&#39;s log in the PVS-Studio plugin for Visual Studio and enable Best Warnings.</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Mon, 12 Dec 2022 14:02:41 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>What&apos;s New for C++ Developers in Visual Studio 2022 17.4 &#45;&#45; Sy Brand</title>
      <link>https://isocpp.org//blog/2022/11/whats-new-for-cpp-developers-in-visual-studio-2022-17.4-sy-brand</link>
      <guid>https://isocpp.org//blog/2022/11/whats-new-for-cpp-developers-in-visual-studio-2022-17.4-sy-brand</guid>
      <description><![CDATA[<p>
	<img alt="syroof-150x150.jpg" src="https://isocpp.org/files/img/syroof-150x150.jpg" style="width: 150px; margin: 10px; float: right;" />Visual Studio 2022 17.4 is available:</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/whats-new-for-cpp-developers-in-visual-studio-2022-17-4/">What&#39;s New for C++ Developers in Visual Studio 2022 17.4</a></h3>
	<p>
		by Sy Brand</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		We are happy to announce that Visual Studio 2022 version 17.4 is now generally available! This post summarizes the new features you can find in this release for C++. ...</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Fri, 11 Nov 2022 18:26:55 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>FOSSA is announcing the GA of a security and license scanning capability for C and C++ projects</title>
      <link>https://isocpp.org//blog/2022/11/fossa-is-announcing-the-ga-of-a-security-and-license-scanning-capability-fo</link>
      <guid>https://isocpp.org//blog/2022/11/fossa-is-announcing-the-ga-of-a-security-and-license-scanning-capability-fo</guid>
      <description><![CDATA[<p>
	<a href="https://fossa.com/about">FOSSA</a> was founded to provide the most relevant and real-time end-to-end governance for all third-party code. They now announce the general availability of C and C++ Security and License Scanning</p>
<blockquote>
	<h3>
		<a href="https://fossa.com/blog/announcing-c-security-license-scanning-ga/">Announcing the GA of C and C++ Security and License Scanning</a><br />
		By&nbsp;Gauthami Polasani</h3>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		Unlike other C/C++ scanning tools, FOSSA does not take a one-solution-fits-all approach to dependency identification in such a complex and layered ecosystem. FOSSA uses multi-pronged strategies (as described below) to accurately identify dependencies and surface security and license risks &mdash; regardless of how the code is included.).</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Tue, 01 Nov 2022 18:44:04 +0000</pubDate>
      <dc:creator>Jordi Mon Companys</dc:creator>
    </item>

    <item>
      <title>Examples of errors that PVS&#45;Studio found in LLVM 15.0</title>
      <link>https://isocpp.org//blog/2022/10/examples-of-errors-that-pvs-studio-found-in-llvm-15.0</link>
      <guid>https://isocpp.org//blog/2022/10/examples-of-errors-that-pvs-studio-found-in-llvm-15.0</guid>
      <description><![CDATA[<p>
	Compilers are evolving: they issue more and more warnings. Do developers still need to use static code analyzers like PVS-Studio? Yes, because analyzers are evolving too. In this article you&#39;ll see how PVS-Studio can find bugs even in a compiler.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/cpp/1003/?utm_source=firefly&amp;utm_medium=isocpp">Examples of errors that PVS-Studio found in LLVM 15.0</a></h3>
	<p>
		by Andrey Karpov</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		It&#39;s a cool bug, although it&#39;s not scary. There is no semicolon after the return statement. As a result, the code does not work as it looks.</p>
	<pre class="prettyprint lang-cpp">
void FunctionLoweringInfo::ComputePHILiveOutRegInfo(const PHINode *PN) {&#10;  ....&#10;  Register DestReg = It-&gt;second;&#10;  if (DestReg == 0)&#10;    return&#10;  assert(Register::isVirtualRegister(DestReg) &amp;&amp;&#10;         "Expected a virtual reg");&#10;  LiveOutRegInfo.grow(DestReg);&#10;  ....&#10;}</pre>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Tue, 25 Oct 2022 16:15:50 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>Improving copy and move elision &#45; Bran Hagger</title>
      <link>https://isocpp.org//blog/2022/10/improving-copy-and-move-elision-bran-hagger</link>
      <guid>https://isocpp.org//blog/2022/10/improving-copy-and-move-elision-bran-hagger</guid>
      <description><![CDATA[<p>
	<img alt="improving-copy-and-move-elision.png" src="https://isocpp.org/files/img/improving-copy-and-move-elision.png" style="width: 400px; margin: 10px; float: right;" />From the MSVC team blog:</p>
<blockquote>
	<h3>
		<a href="https://devblogs.microsoft.com/cppblog/improving-copy-and-move-elision/">Improving copy and move elision</a></h3>
	<p>
		by Bran Hagger</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		With Visual Studio 2022 version 17.4 Preview 3, we&rsquo;ve significantly increased the number of situations where we do copy or move elision and given users more control over whether these transformations are enabled. ...</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Mon, 24 Oct 2022 19:52:07 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    <item>
      <title>PVS&#45;Studio 7.21: GitLab Code Quality, Unreal Engine</title>
      <link>https://isocpp.org//blog/2022/10/pvs-studio-7.21-gitlab-code-quality-unreal-engine</link>
      <guid>https://isocpp.org//blog/2022/10/pvs-studio-7.21-gitlab-code-quality-unreal-engine</guid>
      <description><![CDATA[<p>
	PVS-Studio 7.21 has been released. This short note describes the analyzer&#39;s main enhancements and lists our recent articles and quizzes.</p>
<blockquote>
	<h3>
		<a href="https://pvs-studio.com/en/blog/posts/1000/?utm_source=isocpp&amp;utm_medium=firefly">PVS-Studio 7.21: GitLab Code Quality, Unreal Engine</a></h3>
	<p>
		by Sergey Vasiliev</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		New C++ diagnostics:</p>
	<ul>
		<li>
			V1090. The &#39;std::uncaught_exception&#39; function is deprecated since C++17 and is removed in C++20. Consider replacing this function with &#39;std::uncaught_exceptions&#39;.</li>
		<li>
			V1091. The pointer is cast to an integer type of a larger size. Casting pointer to a type of a larger size is an implementation-defined behavior.</li>
		<li>
			V1092. Recursive function call during the static/thread_local variable initialization might occur. This may lead to undefined behavior.</li>
	</ul>
</blockquote>]]></description>
      <dc:subject><![CDATA[Product News,]]></dc:subject>
      <pubDate>Wed, 19 Oct 2022 13:50:37 +0000</pubDate>
      <dc:creator>Andrey Karpov</dc:creator>
    </item>

    <item>
      <title>Enhance application security with FORTIFY_SOURCE &#45;&#45; Siddharth Sharma</title>
      <link>https://isocpp.org//blog/2022/09/enhance-application-security-with-fortify-source-siddharth-sharma</link>
      <guid>https://isocpp.org//blog/2022/09/enhance-application-security-with-fortify-source-siddharth-sharma</guid>
      <description><![CDATA[<p>
	<img alt="" src="https://www.redhat.com/cms/managed-files/styles/media_thumbnail/s3/red-hat-300x300.png?itok=3Ri7m188" style="width: 100px; height: 100px; float: right;" />Improving safety and security in GCC:</p>
<blockquote>
	<h3>
		<a href="https://www.redhat.com/en/blog/enhance-application-security-fortifysource">Enhance application security with FORTIFY_SOURCE</a></h3>
	<p>
		by Siddharth Sharma</p>
</blockquote>
<p>
	From the article:</p>
<blockquote>
	<p>
		The FORTIFY_SOURCE macro provides lightweight support for detecting buffer overflows in various functions that perform operations on memory and strings. Not all types of buffer overflows can be detected with this macro, but it does provide an extra level of validation for some functions that are potentially a source of buffer overflow flaws. It protects both C and C++ code. ...</p>
</blockquote>]]></description>
      <dc:subject><![CDATA[News, Product News,]]></dc:subject>
      <pubDate>Mon, 19 Sep 2022 22:45:53 +0000</pubDate>
      <dc:creator>Blog Staff</dc:creator>
    </item>

    
    </channel>
</rss>