~lbnz/xr0

The Xr0 Verifier for C
1679dae7 — Xr0 Team a month ago
feat: detect out of range values in caller and return value verification
1e575cc5 — Amisi Kiarie a month ago
feat: #define XR0 by default for conditional use
e3e44747 — Amisi Kiarie a month ago
chore: add -pedantic

refs

master
browse  log 
v1.17.0
release notes 

clone

read-only
https://git.sr.ht/~lbnz/xr0
read/write
git@git.sr.ht:~lbnz/xr0

You can also use your local clone with git send-email.

#Xr0 – C But Safe

Xr0 is a verifier for C that aims to guarantee the safety of C programs at compile time. It will eliminate common pitfalls such as use-after-frees, double frees, buffer out-of-bounds reads/writes, null pointer dereferences, uses of uninitialised memory, arithmetic overflows/underflows and all other instances of undefined behaviour in C.

View the project website here.

#Getting started

Check out the tutorial on the website.

#Contributing

The best way to contribute to Xr0 is to use it for something.

In that regard, we're forming a cohort for the first few users of Xr0. Participation in the cohort will come with support and prioritisation (within reason) of features in our roadmap as we work towards making Xr0 useful for everyone. And best of all, it'll be completely free. The only thing is there's two of us, so we'll have to keep the cohort fairly small. Reach out via email to Claude or Amisi or DM us on the Xr0 Discord if you're interested in this.

We are currently not accepting pull requests due to the early stage of Xr0. However, if you have a serious proposal for how we can improve Xr0 you can make an issue to explain it.

#License

This project is distributed under the terms of the Apache 2.0 open source license. Please refer to LICENSE for the full terms.