_ ___ ____ ____ ___ __ __ ____ _ _____ | | |_ _| __ ) / ___/ _ \| \/ | _ \ / \|_ _| | | | || _ \| | | | | | |\/| | |_) / _ \ | | | |___ | || |_) | |__| |_| | | | | __/ ___ \| | |_____|___|____/ \____\___/|_| |_|_| /_/ \_\_| This is a single-file header-only library that doesn’t introduce any new functionality, but simply aids in writing more compatible code. Most of the library is dedicated to making C23 features work on pre-C23 codebases (such as static_assert(), unreachable(), etc.). There are some other things too though, such as the charN_t types from uchar.h as platforms such as Darwin and NetBSD don’t ship uchar.h. The header is generated by the ‘gen’ script included in this repo. Simply run the script and select your options, redirecting the output to the header-file you’d like to generate: $ ./gen >compat.h If you can’t be bothered to clone this repository or download the script to your system, you can also just curl it: $ curl '<URL TO SCRIPT>' | sh >compat.h