This patch adds diagnoses when initializing a global variable using the address of another global variable that uses ROPI/RWPI relocation model.
For example,
int a;
extern void foo();
int *x = &a; we cannot statically initialize x with -frwpi
void *y = &foo(); we can't statically initialize y with -fropi