Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 981 Bytes

README.org

File metadata and controls

27 lines (21 loc) · 981 Bytes

libCat 🐈‍⬛

libCat is a non-POSIX compliant C++26 runtime. It has no pthreads nor malloc(), and by extension no exceptions. It has type-safe arithmetic, SIMD, fast syscalls, CRTP interfaces, hierarchical memory allocators, and value-based error handling, among many other features.

http://wgoo.ch/overflow.html

https://youtu.be/BrBb0mqoIAc

More essays and videos will come in the future.

Building

libCat requires a recent development version of GCC 15 or Clang 20 from the trunk branch. Compiling libCat is only routinely tested using ninja. Configuring the build requires CMake 3.29.

$ cmake -B build/ -G 'Ninja Multi-Config' # or: cmake -B build -GNinja
$ cmake --build build/  # or: ninja -C build/
$ ./build/tests/Debug/unit_tests

The .clang-format and .clang-tidy configurations are only compatible with recent builds of clang-tools from the main branch.