1328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher// RUN: %clang_cc1 -emit-llvm -g -triple x86_64-apple-darwin -std=c++11 %s -o - | FileCheck %s
2328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher
3328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopherunion E {
4328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher  int a;
5328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher  float b;
6328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher  int bb() { return a;}
7328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher  float aa() { return b;}
8328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher  E() { a = 0; }
9328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher};
10328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher
11328584e9eddf0ff388b0700b1e865ae046a30a9cEric ChristopherE e;
12328584e9eddf0ff388b0700b1e865ae046a30a9cEric Christopher
1378d1a10e13a1abfd4830bccf2a97b2993da1ed5cNick Lewycky// CHECK: metadata !{i32 {{.*}}, null, metadata !"E", metadata !{{.*}}, i32 3, i64 32, i64 32, i64 0, i32 0, null, metadata !{{.*}}, i32 0, null} ; [ DW_TAG_union_type ]
1478d1a10e13a1abfd4830bccf2a97b2993da1ed5cNick Lewycky// CHECK: metadata !{i32 {{.*}}, i32 0, metadata !{{.*}}, metadata !"bb", metadata !"bb", metadata !"_ZN1E2bbEv", metadata !{{.*}}, i32 6, metadata !{{.*}}, i1 false, i1 false, i32 0, i32 0, null, i32 256, i1 false, null, null, i32 0, metadata !{{.*}}, i32 6} ; [ DW_TAG_subprogram ]
1578d1a10e13a1abfd4830bccf2a97b2993da1ed5cNick Lewycky// CHECK: metadata !{i32 {{.*}}, i32 0, metadata !{{.*}}, metadata !"aa", metadata !"aa", metadata !"_ZN1E2aaEv", metadata !{{.*}}, i32 7, metadata !{{.*}}, i1 false, i1 false, i32 0, i32 0, null, i32 256, i1 false, null, null, i32 0, metadata !{{.*}}, i32 7} ; [ DW_TAG_subprogram ]
1678d1a10e13a1abfd4830bccf2a97b2993da1ed5cNick Lewycky// CHECK: metadata !{i32 {{.*}}, i32 0, metadata !{{.*}}, metadata !"E", metadata !"E", metadata !"", metadata !{{.*}}, i32 8, metadata !{{.*}}, i1 false, i1 false, i32 0, i32 0, null, i32 256, i1 false, null, null, i32 0, metadata !{{.*}}, i32 8} ; [ DW_TAG_subprogram ]
17