Is the following code undefined behavior, implementation defined or defined by the standard? I couldn't find any reference regarding assigning an integer to its own address.
volatile int x = (int)&x;
This code gets translated to:
lea eax,[ebp-4]
mov dword ptr [ebp-4],eax