C++

(Guaranteed) Copy Elision in C++11/14/17

Why `auto foo = Foo()` does neither copy nor move a `Foo` object. C++17's mandatory copy elision omits copies and moves when initializing from temporaries, returning temporaries or throwing/catching by value.

Using modern CMake to test private C++ implementation files

Using modern CMake to test private C/C++ implementation files without exposing them to the library user.