Add a builtin for OSX

For some reason it appears that "unsigned long" isn't the same type as
"uint32_t" or "uint64_t" on OSX, but it is the same on Linux.  This
builtin stuff should probably go away... but I guess I can live with
it for now.