Not thread-safe. Also, from Alex in the comments: "Sounds good! Although probably we will run out of stack waay before that".
You can try this yourself by compiling:
#include <stdio.h>
int i = 0; int x() {--i && x(printf("x"));} int main() {x();}
using gcc with and without '-02'.