The compiler will propagate __declspec(restrict). For example, the CRT malloc function is decorated with __declspec(restrict) and therefore, pointers initialized to memory locations with malloc are also implied to not be aliased.

The compiler does not check that the pointer is actually not aliased. It is the developer's responsibility to ensure the program does not alias a pointer marked with the restrict __declspec modifier.