diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-05-20 16:38:50 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-05-20 16:38:50 +0000 |
commit | 6ab2fa8f78f4c76da056580ec3ee1780eab08c76 (patch) | |
tree | b174ce5a814cd52cca8718ca8e7867f84f3abf15 /clang/lib/Sema/SemaCXXCast.cpp | |
parent | 24b31b6b7d082cbbeb81b1d4106f3fdd4e349d1d (diff) | |
download | bcm5719-llvm-6ab2fa8f78f4c76da056580ec3ee1780eab08c76.tar.gz bcm5719-llvm-6ab2fa8f78f4c76da056580ec3ee1780eab08c76.zip |
Introduce Type::isSignedIntegerOrEnumerationType() and
Type::isUnsignedIntegerOrEnumerationType(), which are like
Type::isSignedIntegerType() and Type::isUnsignedIntegerType() but also
consider the underlying type of a C++0x scoped enumeration type.
Audited all callers to the existing functions, switching those that
need to also handle scoped enumeration types (e.g., those that deal
with constant values) over to the new functions. Fixes PR9923 /
<rdar://problem/9447851>.
llvm-svn: 131735
Diffstat (limited to 'clang/lib/Sema/SemaCXXCast.cpp')
-rw-r--r-- | clang/lib/Sema/SemaCXXCast.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCXXCast.cpp b/clang/lib/Sema/SemaCXXCast.cpp index 31a5f92dacc..c7038322e1c 100644 --- a/clang/lib/Sema/SemaCXXCast.cpp +++ b/clang/lib/Sema/SemaCXXCast.cpp @@ -1334,6 +1334,7 @@ void Sema::CheckCompatibleReinterpretCast(QualType SrcType, QualType DestType, return; } + // FIXME: Scoped enums? if ((SrcTy->isUnsignedIntegerType() && DestTy->isSignedIntegerType()) || (SrcTy->isSignedIntegerType() && DestTy->isUnsignedIntegerType())) { if (Context.getTypeSize(DestTy) == Context.getTypeSize(SrcTy)) { |