diff options
Diffstat (limited to 'libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp')
-rw-r--r-- | libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp b/libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp index 1ad2aa125c29..dc59a6228386 100644 --- a/libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp +++ b/libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp @@ -16,4 +16,16 @@ struct Empty {}; +struct A { + int x_; + int y_; +}; + +struct B : public A { + int z_; + virtual ~B() = default; +}; + static_assert(sizeof(std::expected<void, Empty>) == sizeof(bool)); +static_assert(sizeof(std::expected<void, A>) == 2 * sizeof(int) + alignof(std::expected<void, A>)); +static_assert(sizeof(std::expected<void, B>) == sizeof(B) + alignof(std::expected<void, B>)); |