RC is a dialect of C that adds safe, region-based
memory management to C. Region-based memory
management allocates objects in a
program-specified region. Objects cannot be freed
individually; instead regions are deleted with all
their contained objects. RC is safe, since for
each region, r, it maintains a reference count of
the number of external pointers to objects in r
(i.e. of pointers not stored within r). Deleting a
region with a non-zero reference count causes a
runtime error (abort). RC's compiler, rcc, is
based on gcc.