October 2022

Convenient Unicode UTF-8 UTF-16 Conversion Functions for Windows C++ Code -- Giovanni Dicanio

In Windows C++ programming many times there's a need to convert text between UTF-8 and UTF-16 encodings.

Convenient Unicode Conversion Functions for Windows C++ Code

by Giovanni Dicanio

From the article:

I published on GitHub a header-only library (Utf8Conv) that implements some convenient functions to convert text between UTF-8 and UTF-16 Unicode encodings.

I developed the library using Visual Studio 2019 with C++17 features enabled.

C++ on Sea 2023

C++ on Sea will be back by the sea, again, for 2023. This time we'll be running in the last week of June (27th-30th)

C++ on Sea 2023

From the article:

A limited number of Super Early Bird tickets are available now at a larger discount. Once they are gone Early Bird tickets will remain available until the speakers are announced (or they run out) - after which tickets will be full price.

We'll soon open the call for speakers and provide more information

...

Meeting C++ 2022 is in 3 weeks!

This years Meeting C++ conference is only 3 weeks away! Not much time left to join this years conference in Berlin or online for watching the talks and being part of the discussions around C++ and software design!

Meeting C++ features this year keynotes by Nicolai Josuttis, Daniela Engert and Klaus Iglberger! Online the conference offers AMAs with Andrei Alexandrescu, Inbal Levi and Bjarne Stroustrup. Onsite 3 tracks are hosted, with a 4th track being online only.

Meeting C++ 2022

by Jens Weller

From the page:

Meeting C++ 2022 will be held as a hybrid event in Berlin and online on 17th - 19th November 2022.

This years conference will be hybrid, a limited number of attendees will be able to join in Berlin, but the conference will also feature online and onsite only content. You'll be able to meet and exchange with the world wide C++ community for 3 full days.

Examples of errors that PVS-Studio found in LLVM 15.0

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'll see how PVS-Studio can find bugs even in a compiler.

Examples of errors that PVS-Studio found in LLVM 15.0

by Andrey Karpov

From the article:

It's a cool bug, although it's not scary. There is no semicolon after the return statement. As a result, the code does not work as it looks.

void FunctionLoweringInfo::ComputePHILiveOutRegInfo(const PHINode *PN) {
  ....
  Register DestReg = It->second;
  if (DestReg == 0)
    return
  assert(Register::isVirtualRegister(DestReg) &&
         "Expected a virtual reg");
  LiveOutRegInfo.grow(DestReg);
  ....
}

Improving copy and move elision - Bran Hagger

improving-copy-and-move-elision.pngFrom the MSVC team blog:

Improving copy and move elision

by Bran Hagger

From the article:

With Visual Studio 2022 version 17.4 Preview 3, we’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. ...

PVS-Studio 7.21: GitLab Code Quality, Unreal Engine

PVS-Studio 7.21 has been released. This short note describes the analyzer's main enhancements and lists our recent articles and quizzes.

PVS-Studio 7.21: GitLab Code Quality, Unreal Engine

by Sergey Vasiliev

From the article:

New C++ diagnostics:

  • V1090. The 'std::uncaught_exception' function is deprecated since C++17 and is removed in C++20. Consider replacing this function with 'std::uncaught_exceptions'.
  • 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.
  • V1092. Recursive function call during the static/thread_local variable initialization might occur. This may lead to undefined behavior.

ACCU 2023 Call for Papers is open -- ACCU

The ACCU is now putting together its program, and they want you to speak on C++. The ACCU conference has strong C++ tracks, though it is not a C++-only conference. If you have something to share, check out their

Call for PapersACCU 2023 Logo

by the ACCU

About the conference:

The ACCU 2023 conference will be from 2023-04-19 to 2023-04-22, with pre-conference workshops on 2023-04-17 and 2023-04-18.

The ACCU 2023 will be a hybrit event.

Historically, ACCU has a lot of C++ and C content, and is proud of that: ACCU is the foremost annual conference for people interested in C++ and C, at least in and around the UK. But it is not just a C++ and C conference, ACCU is about programming in whatever language people are using, with whatever tools and processes people are using: D, Chapel, Java, Kotlin, C#, F#, Groovy, Rust, Go, Python, Ruby, Lisp, to name just a few programming languages about which there have been sessions at ACCU conferences. Git, Mercurial, CMake, Meson, TDD, BDD, all these tools and techniques have been the focus of sessions at ACCU. The ACCU Conference is looking for sessions that will be interesting to people who create software.
The ACCU Conference is put on by ACCU (https://accu.org), but is open to anyone who wishes to be there either as a presenter or an attender.

The Call for Papers lasts for about 3 weeks and will close on Monday 7th November 2022 at 23:59:59 GMT.

The Bridge Pattern -- Rainer Grimm

Of Bridges and Pimpls:

The Bridge Pattern

by Rainer Grimm

From the article:

In C++, a simplified version of the Bridge Pattern is often used. ... The key idea of the Pimpl Idiom is that the implementation of the class is hidden behind a pointer. Here is a recipe for implementing the Pimpl Idiom: ...