use __restricted for compilation without C99

It is supported by gcc and microsoft.