the C standard does not allow Turing complete implementations, and its evaluation semantics does not preserve typing. There is no C program for which the standard can guarantee that it will not crash.
Subtleties of C
everything is broken.