diff options
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Sema/SemaCXXCast.cpp | 2 | ||||
-rw-r--r-- | clang/test/SemaCXX/warn-cast-align.cpp | 4 |
2 files changed, 2 insertions, 4 deletions
diff --git a/clang/lib/Sema/SemaCXXCast.cpp b/clang/lib/Sema/SemaCXXCast.cpp index 54018005dcb..b59c04a0a1c 100644 --- a/clang/lib/Sema/SemaCXXCast.cpp +++ b/clang/lib/Sema/SemaCXXCast.cpp @@ -468,8 +468,6 @@ CheckReinterpretCast(Sema &Self, Expr *&SrcExpr, QualType DestType, != TC_Success && msg != 0) Self.Diag(OpRange.getBegin(), msg) << CT_Reinterpret << SrcExpr->getType() << DestType << OpRange; - else if (Kind == CastExpr::CK_Unknown || Kind == CastExpr::CK_BitCast) - Self.CheckCastAlign(SrcExpr, DestType, OpRange); } diff --git a/clang/test/SemaCXX/warn-cast-align.cpp b/clang/test/SemaCXX/warn-cast-align.cpp index d2144d279eb..68acbdd4eaa 100644 --- a/clang/test/SemaCXX/warn-cast-align.cpp +++ b/clang/test/SemaCXX/warn-cast-align.cpp @@ -11,12 +11,12 @@ void test0(char *P) { a = CharPtr(P); b = (short*) P; // expected-warning {{cast from 'char *' to 'short *' increases required alignment from 1 to 2}} - b = reinterpret_cast<short*>(P); // expected-warning {{cast from 'char *' to 'short *' increases required alignment from 1 to 2}} + b = reinterpret_cast<short*>(P); typedef short *ShortPtr; b = ShortPtr(P); // expected-warning {{cast from 'char *' to 'ShortPtr' (aka 'short *') increases required alignment from 1 to 2}} c = (int*) P; // expected-warning {{cast from 'char *' to 'int *' increases required alignment from 1 to 4}} - c = reinterpret_cast<int*>(P); // expected-warning {{cast from 'char *' to 'int *' increases required alignment from 1 to 4}} + c = reinterpret_cast<int*>(P); typedef int *IntPtr; c = IntPtr(P); // expected-warning {{cast from 'char *' to 'IntPtr' (aka 'int *') increases required alignment from 1 to 4}} } |