Tuesday, 9 June 2026

Profiles in C++

Profiles are a relatively new concept from the C++ Core Guidelines.

Their aim is to improve code safety, portability and maintainability.

Profiles are (portably) enforceable rules to achieve a specific guarantee. For example a Bounds Safety profile would force the compiler or static analyzer to flag the following:

int arr[5];
arr[10] = 42;  // out of bounds access - flagged by profile

A presentation by Stroustrup at a Safety Study Group explores this. Herb Sutter also published an interesting paper which refers to levelling up versus Rust.

No comments: