Fil-C

Memory SafetyC/C++ CompatibilityModern Tooling

Welcome to Fil-C, a memory safe implementation of the C and C++ programming languages you already know and love.

What is Fil-C?

Fil-C is a fanatically compatible memory-safe implementation of C and C++. Lots of software compiles and runs with Fil-C with zero or minimal changes. All memory safety errors are caught as Fil-C panics. Fil-C achieves this using a combination of concurrent garbage collection and invisible capabilities (InvisiCaps). Every possibly-unsafe C and C++ operation is checked. Fil-C has no unsafe statement and only limited FFI to unsafe code.

Key Features

Quick Links

License

Fil-C's compiler is licensed under Apache 2. Fil-C's runtime is licensed under BSD 2-clause. Fil-C has two standard libraries; musl is used in the pizfix slice binary distributions and is licensed under MIT, while glibc is available in the /opt/fil binary distributions and in Pizlix and is licensed under LGPL 2.1.

Community

Join the Fil-C Discord community to discuss the language implementation, share projects, and contribute to its development.