cpp-systems

Installation
SKILL.md

C++ Systems & Libraries

Covers C++17 as the baseline, with C++20 features called out where a project's standard allows them. For plain C (manual lifetimes, status enums, native extensions), see the ia-c-systems skill.

Repo conventions outrank this skill

Check CMakeLists.txt for CXX_STANDARD, read .clang-format and .clang-tidy, and read two adjacent translation units before writing. Where they conflict with the rules below, they win.

The conflicts that actually happen:

Local constraint Consequence
-fno-exceptions Error handling is codes or expected-alikes. Constructors cannot report recoverable failure, so use a fallible factory or construct a valid fallback state. new (std::nothrow) only where the project's OOM policy is to observe null and recover; plain new is fine where the policy is termination
Standard pinned below C++17 No std::optional/string_view/structured bindings/if constexpr; check before using any
Public header is ABI-stable No layout changes, no inline-function changes, no added virtuals: load the ABI reference
Embedded or freestanding target No RTTI, no dynamic allocation in hot paths, possibly no STL containers

Tooling

Installs
7
GitHub Stars
33
First Seen
6 days ago
cpp-systems — iliaal/ai-skills