diff --git a/clang/test/Modules/Inputs/merge-record-definition/RecordDef.framework/Headers/RecordDef.h b/clang/test/Modules/Inputs/merge-record-definition/RecordDef.framework/Headers/RecordDef.h --- a/clang/test/Modules/Inputs/merge-record-definition/RecordDef.framework/Headers/RecordDef.h +++ b/clang/test/Modules/Inputs/merge-record-definition/RecordDef.framework/Headers/RecordDef.h @@ -13,3 +13,9 @@ int y; }; }; + +typedef union _UnionRecord UnionRecord; +union _UnionRecord { + int u: 2; + int v: 4; +}; diff --git a/clang/test/Modules/Inputs/merge-record-definition/RecordDefCopy.framework/Headers/RecordDefCopy.h b/clang/test/Modules/Inputs/merge-record-definition/RecordDefCopy.framework/Headers/RecordDefCopy.h --- a/clang/test/Modules/Inputs/merge-record-definition/RecordDefCopy.framework/Headers/RecordDefCopy.h +++ b/clang/test/Modules/Inputs/merge-record-definition/RecordDefCopy.framework/Headers/RecordDefCopy.h @@ -13,3 +13,9 @@ int y; }; }; + +typedef union _UnionRecord UnionRecord; +union _UnionRecord { + int u: 2; + int v: 4; +}; diff --git a/clang/test/Modules/Inputs/merge-record-definition/RecordDefHidden.framework/Headers/Hidden.h b/clang/test/Modules/Inputs/merge-record-definition/RecordDefHidden.framework/Headers/Hidden.h --- a/clang/test/Modules/Inputs/merge-record-definition/RecordDefHidden.framework/Headers/Hidden.h +++ b/clang/test/Modules/Inputs/merge-record-definition/RecordDefHidden.framework/Headers/Hidden.h @@ -13,3 +13,9 @@ int y; }; }; + +typedef union _UnionRecord UnionRecord; +union _UnionRecord { + int u: 2; + int v: 4; +}; diff --git a/clang/test/Modules/merge-record-definition-nonmodular.m b/clang/test/Modules/merge-record-definition-nonmodular.m --- a/clang/test/Modules/merge-record-definition-nonmodular.m +++ b/clang/test/Modules/merge-record-definition-nonmodular.m @@ -18,6 +18,8 @@ buf.b = 1; AnonymousStruct strct; strct.x = 1; + UnionRecord rec; + rec.u = 1; } #ifdef MODULAR_BEFORE_TEXTUAL @@ -31,4 +33,6 @@ buf.c = 2; AnonymousStruct strct; strct.y = 2; + UnionRecord rec; + rec.v = 2; } diff --git a/clang/test/Modules/merge-record-definition-visibility.m b/clang/test/Modules/merge-record-definition-visibility.m --- a/clang/test/Modules/merge-record-definition-visibility.m +++ b/clang/test/Modules/merge-record-definition-visibility.m @@ -13,4 +13,6 @@ buf.b = 1; AnonymousStruct strct; strct.y = 1; + UnionRecord rec; + rec.u = 1; } diff --git a/clang/test/Modules/merge-record-definition.m b/clang/test/Modules/merge-record-definition.m --- a/clang/test/Modules/merge-record-definition.m +++ b/clang/test/Modules/merge-record-definition.m @@ -12,6 +12,8 @@ buf.b = 1; AnonymousStruct strct; strct.x = 1; + UnionRecord rec; + rec.u = 1; } #import @@ -21,4 +23,6 @@ buf.c = 2; AnonymousStruct strct; strct.y = 2; + UnionRecord rec; + rec.v = 2; }