{abp_pagination_html}

boost

Fuzzing beast with libFuzzer

A short blog post about my experience in fuzzing beast during my boost review

Fuzzing beast with libFuzzer

by Jens Weller

From the article:

During the weekend I wanted to take a closer look at beast, a http library proposed for boost. I planned to write an http client class, as thats something I'll need in some project later anyways. I've been looking at beast on and off for a few month now, and started by reviewing the documentation and examples to get a feel for the library it self.

5 years of Meeting C++

Meeting C++ exists now for 5 years, lets celebrate on the blog:

5 years of Meeting C++

by Jens Weller

From the article:

Just a little bit more then 5 years ago, Meeting C++ went public. Since then, it has been a wild ride and huge success. Today, Meeting C++ reaches over 50k in social media, the conference it self has grown from 150 to 600 in its 5 editions...

Using C++ Coroutines with Boost C++ Libraries—Eric Battalio

Working with the future tools.

Using C++ Coroutines with Boost C++ Libraries

by Eric Battalio

From the article:

Last month, Jim Springfield wrote a great article on using C++ Coroutines with Libuv (a multi-platform C library for asynchronous I/O). This month we will look at how to use coroutines with components of Boost C++ libraries, namely boost::future and boost::asio...

Boost 1.64.0 is released

The new boost is out!

Boost 1.64.0 is released

From the article:

New Libraries


Process:
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

Any:

  • 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

Atomic:

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

Config:

  • Added BOOST_NO_CXX11_SFINAE_EXPR defect detection.

...

CppChat[12]: + As a Service

CppChat:

CppChat[12]: + As a Service

with Jackie Kay, Robert Ramey, and Jon Kalb

From the chat:

Jackie, Robert, and Jon discuss Jackie's talk at last week's emBO++ and the upcoming Boost review of Robert's Safe Numerics library. We also discuss Kona, Slack, C++Now, and functional programming C++.

Using QtCreator together with the Visual Studio Build Tools

A first posting about working with Qt and Visual C++ in QtCreator

Using QtCreator together with the Visual Studio Build Tools

by Jens Weller

From the article:

For a while I've been using QtCreator as my IDE, mostly because its deep integration with Qt, as most of my projects are Qt related. With this, I also preferred (and still do a little) to use the MinGW builds of Qt on Windows. In the past, as GCC was a little bit better with the newer standards, today, well, never change a running system...

Ranges: the STL to the Next Level—Jonathan Boccara

Ranges are coming!

Ranges: the STL to the Next Level

by Jonathan Boccara

From the article:

The C++ Standard Template Library (STL) is a fantastic tool for making code more correct and expressive. It is mainly composed of two parts:

  • The containers, such as std::vector or std::map for instance,
  • The algorithms, a fairly large collection of generic functions that operate amongst others on containers. They are mostly found under the algorithm header.

(Not) detecting bugs—Andrzej KrzemieĊ„ski

Undefined behaviour can be dangerous.

(Not) detecting bugs

by Andrzej Krzemieński

From the article:

The following code contains a bug. A developer has spent quite some time looking for the source. The intent of this code is to iterate over two vectors simultaneously, from the first up to the one-before-last element. Thus the most interesting tools that will be employed will be boost::zip_iterator and std::prev.

#include <boost/iterator/zip_iterator.hpp>
#include <boost/tuple/tuple.hpp>
#include <vector>

using zip_iter = boost::zip_iterator<
                   boost::tuple<
                     std::vector<int>::iterator,
                     std::vector<int>::iterator
                   >
                 >;
int main()
{
  std::vector<int> v1 = {1, 2, 3, 4, 0};
  std::vector<int> v2 = {2, 3, 5, 7, 0};
    
  zip_iter beg {boost::make_tuple(v1.begin(), v2.begin())};
  zip_iter end {boost::make_tuple(v1.end(), v2.end())};
  
  auto process = [](zip_iter::reference){};
  std::for_each(beg, std::prev(end), process);
}

C++Now 2017 Call for Submissions is Live

C++Now 2017 will be held in Aspen, May 15–20, 2017.

C++Now 2017 Call for Submissions

From the invitation:

C++Now builds upon the resounding success of previous BoostCon and C++Now conferences, We look forward to considering your proposals, among those from leading speakers from the entire C++ community, to make C++Now 2017 even better.

The C++Now Conference is dedicated to discussion and education about C++, an open and free language and standard.  Our Conference will focus on discussion and education about open source software usage and developments in the C++ developer and user community. To reflect the breadth of the C++ and Boost communities, the conference includes sessions aimed at three constituencies: C++ and Boost end-users, hard-core library and tool developers, and researchers pushing the boundaries of computing. The program fosters interaction and engagement within and across those groups, with an emphasis on discussion.

As a multi-paradigm language, C++ is a melting pot with the most compelling ideas from other programming communities blended in powerful ways. Historically, some of the most popular sessions at C++Now have highlighted these concepts, from DSLs to functional programming to transactional memory and more.  Bring your C#, Python, Ruby or Haskell influences to bear in an environment that will broaden their exposure.

Presentations at C++Now 2017 should generally focus on the now established C++11 and C++14 standards, the upcoming C++17 standard, and how those standards shape C++’s future. However, by no means is this intended to restrict the topics of proposals we hope to see. Any other topic related to C++, as described below, is suitable for submission.

This year’s window for submitting is shorter than normal. Submissions must be in by February 3rd, less than four weeks away.