Boost 1.64.0 is released

The new boost is out!

Boost 1.64.0 is released

From the article:

New Libraries

Process library by Klemens D. Morgenstern, that provides cross platorm ways to allows you to:

  • create child processes
  • setup streams for child processes
  • communicate with child processes through streams (synchronously or asynchronously)
  • wait for processes to exit (synchronously or asynchronously)
  • terminate processes

Broken feature:

GitHub #67: "group.wait() does not return".

Updated Libraries


  • Suppressed false warnings about returning reference to temporary
  • boost::addressof is now used instead of directly taking the address #12615
  • Headers are not included using double quotes any more #12053
  • CI tests now run with address, leak, and undefined sanitizers
  • Added more test


  • Fixed possible incorrect code generation in 64-bit atomic operations on 32-bit x86 with gcc versions older than 4.7 and compatible compilers.


  • Added BOOST_NO_CXX11_SFINAE_EXPR defect detection.


Overload 138 is now available

ACCU’s Overload journal of April 2017 is out. It contains the following C++ related articles.

Overload 138 is now available

From the journal:

Breadth First, Depth First, Test First
You can approach a problem top-down or bottom-up. Frances Buontempo wonders if algorithms can help us choose the most appropriate direction. by Frances Buontempo

Space invaders in Elm
Elm is a functional language which compiles to JavaScript. Ossi Hanhinen provides an overview. by Ossi Hanhinen

Single Module Builds – The Fastest Heresy in Town
Unity builds can be controversial. Andy Thomason shows how much difference they can make to build times. by Andy Thomason

An Interview: Emyr Williams
CVu has been running a series of interviews. Frances Buontempo interviews the interviewer, Emyr Williams. by Frances Buontempo

(Not Really So) New Niche for C++: Browser!?
How do you run C++ in a browser? Sergey Ignatchenko demonstrates how to use Emscripten. by Sergey Ignatchenko

Contractual Loopholes
Compilers can optimise away functions you may want to time. Deák Ferenc explores ways to stop this happening. by Deák Ferenc

All About the Base
Representing numbers presents many choices. Teedy Deigh counts the ways. by Teedy Deigh

C++ Jobs and Predictions—Bartlomiej Filipek

Is C++ job market falling or growing? Since billions of lines of code are already written it's not possible to disappear in a second. So what's the current state and the future?

C++ Jobs and Predictions

by Bartlomiej Filipek

From the article:

... if you like this area you'll be able to find a C++ job anyway. I hope C++20 will add another good reason to stick with C++ and even move from other languages... but we need to wait a few years to see it happening.

Slides of the 11th of April 2017 BeCPP Meeting—Marc Gregoire

BeCPP_Logo_282x64.pngOn 11th of April 2017, the Belgian C++ Users Group had their next event sponsored by SoftKinetic.

Slides of the 11th of April 2017 BeCPP Meeting

The presentations:

  • "Challenges in Modern Embedded Development Using C++" (Glyn Matthews)
  • "SFINAE and type traits: In the Mix" (Lieven de ####)

If you couldn’t attend the event in person, or if you would like to go over the material again, you can download them from the BeCPP website.

Quick Q: Are the experimental features of modern C++ reliable for long-term projects?

Quick A: No

Recently on SO:

Are the experimental features of modern C++ reliable for long-term projects?

Is it guaranteed that all compliant compilers have the same experimental features?
No, experimental features are optional.
Are experimental features prone to big changes that make them unreliable?
Yes, the C++ committee might even decide to abandon a feature or in the process of standardization a defect might come up that would force a feature to change.

Generally, it's not a good idea to depend on experimental features. Experimental features are exactly what the word says (i.e., to experiment with).

Disabling narrowing conversions in signal/slot connections—Giuseppe D’Angelo

A new useful feature in Qt:

Disabling narrowing conversions in signal/slot connections

by Giuseppe D'Angelo

From the article:

A small new feature that I have added to Qt 5.8 is the possibility of disabling narrowing conversions in the new-style QObject::connect statement. In this short blog post I would like to share with you why I thought this was useful and therefore implemented it...

Making things do stuff – Part 1—Glennan Carnie

C++ for embedded too!

Making things do stuff – Part 1

by Glennan Carnie

From the article:

C has long been the language of choice for smaller, microcontroller-based embedded systems; particularly for close-to-the-metal hardware manipulation.

C++ was originally conceived with a bias towards systems programming; performance and efficiency being key design highlights.  Traditionally, many of the advancements in compiler technology, optimisation, etc., had centred around generating code for PC-like platforms (Linux, Windows, etc).  In the last few years C++ compiler support for microcontroller targets has advanced dramatically, to the point where Modern C++ is a increasingly attractive language for embedded systems development...

ACCU 2017 One Month Away

The upcomming ACCU 2017 conferenc from 2017-04-26 to 2017-04-29 in Bristol, UK is only one month away.

ACCU 2017 Conference

by the conference committee

About the conference:

The this years ACCU conference has 5 tracks in parallel with a strong focus on C++.

Beside the closing keynote by Herb Sutter, we have 90 minutes sessions by Dietmar Kühl, Timur Doumler, Nicolai Josutis, Marshal Clow, Anastasia Kazakova, Louis Dione, Guy Davidson, John Lakos, Peter Sommerlad, Arne Metz, Hubert Matthews, J. Daniel GarciaSergei Sadovnikov, Björn Fahller, Steven Simpson, Diego Rodriguez-Losada, Dominic Robinson, Arjan van Leeuwen, Vittorio Romeo, Roger Orr, Anthony Williams, Phil Nash, and Odin Holmes.

On the day before the conference we have two full day tutorials with C++ content by Nicolai Josuttis and Felix Petriconi.

So don't forget to register