Rip out the floating point return type handling from the atomic builtin. It's
wrong, and we don't handle floating point value type arguments yet anyways.
Will add correct logic for both when I finish the patch.
llvm-svn: 108004
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp
index 6a818bd..217ada0 100644
--- a/clang/lib/Sema/SemaChecking.cpp
+++ b/clang/lib/Sema/SemaChecking.cpp
@@ -570,13 +570,12 @@
assert(ValType->isIntegerType() &&
"We always convert atomic operation values to integers.");
+ // FIXME: Handle floating point value type here too.
CastExpr::CastKind Kind;
if (OrigValType->isIntegerType())
Kind = CastExpr::CK_IntegralCast;
else if (OrigValType->hasPointerRepresentation())
Kind = CastExpr::CK_IntegralToPointer;
- else if (OrigValType->isRealFloatingType())
- Kind = CastExpr::CK_IntegralToFloating;
else
llvm_unreachable("Unhandled original value type!");