1struct a {
2	int field;
3};
4struct b {
5	int field;
6};
7
8typedef union {
9	struct a *a;
10	struct b *b;
11} transparent_arg __attribute__((__transparent_union__));
12
13static void foo(transparent_arg arg)
14{
15}
16
17static void bar(void)
18{
19	struct b arg = { 0 };
20	foo((struct a *) &arg);
21}
22
23/*
24 * check-name: Transparent union attribute.
25 */
26