gcci is a C language script interpreter front-end for gcc. It allows C programs to be shebang'ed and run like scripts. gcci also caches executable code, only recompiling scripts when they have been changed since a previous invocation.
Executable files are cached temporarily by default, identified by file digest (to allow users of editors which create separate tempfiles for separate script invocations to avail themselves of caching). Files interpreted with the -p flag set are identified by path hash and mtime, allowing faster cache lookup and execution.
Arguments prior to the filename not identified as gcci arguments are passed to gcc as CFLAGS (and LDFLAGS in the case of '-l*' options). All arguments following the filename are passed to the executable as its parameters (as in other script interpreters).
gcci | Download Source