エイリアス解析
もしコンパイルされる言語が型安全であり、コンパイラの型チェックが正しく、さらにローカル変数を参照するポインタを生成する能力を持たない言語(ML、Haskell、Javaなど)だとすると、有益な最適化を行うことが可能である。2つのメモリ位置が確実に異なるエイリアスクラス内にあることが既知である状況は多数ある。
異なる型を持つ2つの変数は同じエイリアスクラスにない。異なる型を持つ2つの変数は、同時に同じメモリ位置を共有することができない、ということは、強い型付けがされていて、メモリへの参照がない(メモリ位置への参照を直接変更することができない)言語の特性だからである。
現在のスタックフレームに局所的な変数の割り当ては、別のスタックフレームからの以前の割り当てと同じエイリアスクラスに存在しない。これは、新しいメモリの割り当ては、他のすべてのメモリ割り当てと領域が交わらないためである。
レコード型(構造体)の各フィールドは、自身のエイリアスクラスを持つ。