diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-04-24 01:25:05 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-04-24 01:25:05 +0000 |
commit | e154456d4a7243fef84f66817b23fcb51790880d (patch) | |
tree | dd3b0a2ab328b4634064479450dac9076fe4d529 /clang/test/SemaCXX/member-pointer-ms.cpp | |
parent | 37ea57862f385c48d2c52e63e74bc238409e402a (diff) | |
download | bcm5719-llvm-e154456d4a7243fef84f66817b23fcb51790880d.tar.gz bcm5719-llvm-e154456d4a7243fef84f66817b23fcb51790880d.zip |
[MS ABI] Fix the preferred alignment of member pointers
Member pointers in the MS ABI have different alignment depending on
whether they were created on the stack or live in a record.
llvm-svn: 235681
Diffstat (limited to 'clang/test/SemaCXX/member-pointer-ms.cpp')
-rw-r--r-- | clang/test/SemaCXX/member-pointer-ms.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/clang/test/SemaCXX/member-pointer-ms.cpp b/clang/test/SemaCXX/member-pointer-ms.cpp index 39cf601dc95..83aeb019ca8 100644 --- a/clang/test/SemaCXX/member-pointer-ms.cpp +++ b/clang/test/SemaCXX/member-pointer-ms.cpp @@ -93,15 +93,15 @@ static_assert(sizeof(void (IncSingle::*)()) == kSingleFunctionSize, ""); static_assert(sizeof(void (IncMultiple::*)()) == kMultipleFunctionSize, ""); static_assert(sizeof(void (IncVirtual::*)()) == kVirtualFunctionSize, ""); -static_assert(__alignof(int IncSingle::*) == kSingleDataAlign, ""); -static_assert(__alignof(int IncMultiple::*) == kMultipleDataAlign, ""); -static_assert(__alignof(int IncVirtual::*) == kVirtualDataAlign, ""); -static_assert(__alignof(void (IncSingle::*)()) == kSingleFunctionAlign, ""); -static_assert(__alignof(void (IncMultiple::*)()) == kMultipleFunctionAlign, ""); -static_assert(__alignof(void (IncVirtual::*)()) == kVirtualFunctionAlign, ""); +static_assert(__alignof(int IncSingle::*) == __alignof(void *), ""); +static_assert(__alignof(int IncMultiple::*) == __alignof(void *), ""); +static_assert(__alignof(int IncVirtual::*) == __alignof(void *), ""); +static_assert(__alignof(void (IncSingle::*)()) == __alignof(void *), ""); +static_assert(__alignof(void (IncMultiple::*)()) == __alignof(void *), ""); +static_assert(__alignof(void (IncVirtual::*)()) == __alignof(void *), ""); // An incomplete type with an unspecified inheritance model seems to take one -// more slot than virtual. It's not clear what it's used for yet. +// more slot than virtual. class IncUnspecified; static_assert(sizeof(int IncUnspecified::*) == kUnspecifiedDataSize, ""); static_assert(sizeof(void (IncUnspecified::*)()) == kUnspecifiedFunctionSize, ""); |