If you replace `gcc` in your build scripts with `foldercc`, then instead of constructing an actual executable, it creates a folder with a bunch of desugared .c files that can be compiled together into the executable. This makes it easy to apply global analyses and transformations. `foldercc` is able to handle partial compilation (i.e., .o and .a files) as well.