when comparing "float" and "const float". This "fixes" the
issue, but may not be the right fix. Steve, please review.
Testcase here: test/Sema/usual-float.c
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43113
91177308-0d34-0410-b5e6-
96231b3b80d8
QualType rhs = rhsExpr->getType();
// If both types are identical, no conversion is needed.
- if (lhs == rhs)
- return lhs;
+ if (lhs.getTypePtr() == rhs.getTypePtr())
+ return lhs.getQualifiedType(0);
// If either side is a non-arithmetic type (e.g. a pointer), we are done.
// The caller can deal with this (e.g. pointer + int).
--- /dev/null
+// RUN: clang %s -fsyntax-only
+
+void foo(int dir, int n, int tindex) {
+ const float PI = 3.142;
+float ang = (float) tindex * (-dir*2.0f*PI/n);
+}