Restricted Pointers
Used when we want to indicate that the same memory location can't be accessed by more than one pointer. So the compiler can apply some optimisations.
Making a pointer restrict and accessing it with another pointer is undefined behaviour.
