Oracle Solaris Studio 12.2:C 用户指南

5.4.7 第七个示例

考虑以下源代码示例:

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;

此示例中的 pragma 告知编译器,允许 foobar 互为别名。编译器作出关于别名信息的以下假定: