このプラグマは、命名済みのポインタ変数の参照解除の地点で、参照解除されているポインタ値が命名済みの変数に含まれているオブジェクトをポイントしないことを指定します。このプラグマは、適用されているそのほかすべての別名レベルを無効にします。次の例では、コンパイラは、間接アクセス *p が直接アクセス a、b、または c を別名設定しないことを仮定します。
#pragma may_not_point_to(p, a, b, c)