diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-01-12 22:41:25 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-01-12 22:41:25 +0000 |
commit | a1796826729ba8c73c32dd49fa4945ff3cb12039 (patch) | |
tree | 9b708cdc4d1e3329c625793f4f66289ae638c839 /test/SemaCXX/empty-class-layout.cpp | |
parent | 3d33622cf50fe8bd2f10e71b9135bc5c74b1786e (diff) |
Make sure adding a field to a struct never reduces its size. PR11745.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148056 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaCXX/empty-class-layout.cpp')
-rw-r--r-- | test/SemaCXX/empty-class-layout.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/test/SemaCXX/empty-class-layout.cpp b/test/SemaCXX/empty-class-layout.cpp index 0b46bf045a..c68f2bb6fb 100644 --- a/test/SemaCXX/empty-class-layout.cpp +++ b/test/SemaCXX/empty-class-layout.cpp @@ -144,3 +144,14 @@ struct B : Empty, A { }; SA(0, sizeof(B) == 16); } + +namespace Test7 { + // Make sure we reserve enough space for both bases; PR11745. + struct Empty { }; + struct Base1 : Empty { }; + struct Base2 : Empty { }; + struct Test : Base1, Base2 { + char c; + }; + SA(0, sizeof(Test) == 2); +} |