次の例のソースコードを考えてみましょう。
struct foo; struct bar; #pragma alias (struct foo, struct bar) struct foo { int f1; int f2; } *fp; struct bar { short b1; short b2; int b3; } *bp;
この例のプラグマにより、foo および bar が相互に別名設定できることがコンパイラに伝えられます。コンパイラは、別名情報について次のように仮定します。
fp->f1 は、bp->b1、bp->b2、および bp->b3 を別名設定できます。
fp->f2 は、 bp->b1、bp->b2、および bp->b3 を別名設定できます。