int a[3], * restrict ip = &a[1]; *ip = 1; does a; invoke undefined behavior?