clang workarounds to emit C99 extern inline funcs

Note: clang 2.9 has bug which results in infinite loop in mcdb tests
when compiled with optimization (-O1 or better) and -D_FORTIFY_SOURCE.
(see http://llvm.org/bugs/show_bug.cgi?id=10276)
Appears to be fixed in clang 3.0 (3.0-6ubuntu3).
Repro on clang 2.9 in Fedora 16: (clang29bug.c)
  #include <unistd.h>
  char buf; int main (void) { return read(STDIN_FILENO, &buf, 1); }
$ clang -o clang29bug -O1 -D_FORTIFY_SOURCE=2 clang29bug.c
$ echo | ./clang29bug; echo $?  # expect 1, not infinite loop