root/usr/src/tools/smatch/src/validation/transparent-union.c
struct a {
        int field;
};
struct b {
        int field;
};

typedef union {
        struct a *a;
        struct b *b;
} transparent_arg __attribute__((__transparent_union__));

static void foo(transparent_arg arg)
{
}

static void bar(void)
{
        struct b arg = { 0 };
        foo((struct a *) &arg);
}

/*
 * check-name: Transparent union attribute.
 */