restrict is a keyword in C99 but not in C++ while clang accepts restrict for C++ code. Modify the TypePrinter to print restrict when not processing C99 code.
Printing restrict in C++ was problematic as printing the argument of
int f(int * __restrict a) { ... }
resulted in
int *restrict a
which is incorrect.