My C compiler, Lance, always had a very annoying thing about it.
That is, it couldn't process system headers because the frontend didn't support many features that are required to do so.
Now, after some added features and a lot of bug fixes, system headers (located in /usr/include, /usr/include/bits, etc), like stdio.h, can be fully processed by my compiler (at least on this machine)
This eliminates the need for making my own compatibility bindings on libc, as Lance can now use the system's C headers. Very satisfying
To showcase this, I made the compiler self-host using only system C headers, completely removing the includes to my custom compatibility bindings. SHA-256 sums between generations match as well.