Marek Polacek

Marek Polacek's contributions

Featured image for: Value range propagation in GCC with Project Ranger.
Article

New C++ features in GCC 14

Marek Polacek

Discover new features and enhancements in the C++ front end in GCC 14, the next major version of the GNU Compiler Collection.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

New C++ features in GCC 13

Marek Polacek

Get an overview of what's new in GCC 13, the latest GNU Compiler Collection release, including bug fixes and new features in the C++ front end.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

New C features in GCC 13

Marek Polacek

The GNU Compiler Collection 13 release implemented a number of interesting features in its C front-end. This article summarizes the most interesting ones.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

New C++ features in GCC 12

Marek Polacek

Version 12 of GCC implements much of the recent C++ standard, allows a number of previously prohibited constructs, and fixes some problematic behaviors.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

Porting your code to C++17 with GCC 11

Marek Polacek

C++17 is now the default version in the GNU Compiler Collection. Find out what you need to know when updating your code to C++17 with GCC 11.

Featured image for: Report from the virtual ISO C++ meetings in 2020 (core language).
Article

New C++ features in GCC 10

Marek Polacek

Explore the front end-based C++ features that C++ application programmers care most about in GCC 10.1 (G++ 10.1), which include many C++20 proposals.

C++11
Article

Understanding when not to std::move in C++

Marek Polacek

New warnings have been added to GCC 9 that can help with wrong or redundant usage of std::move in C++ code. Learn how to enable them.

Red Hat Wimplicit
Article

-Wimplicit-fallthrough in GCC 7

Marek Polacek

(See this article to install GCC 7 on Red Hat Enterprise Linux.) In C and C++, the cases of a switch statement are in fact labels, and the switch is essentially a go to that jumps to the desired label. Since labels do not change the flow of control, one case block falls through to the following case block, unless terminated by a return, a break, a no return call or similar. In the example below, " case 1" falls...