DiagnoseFloatingImpCast expects an integer type, but the changes introduced in D50467 caused us to warn on any builtin type, even pseudo-object type. This lead to us warning in this property expression's syntactic form. Its not clear to me that we should even be analyzing the syntactic form here, but this patch fixes the regression.
rdar://47644670
Thanks!
Erik
Yeah, can we just make a predicate function for this rank comparison? And really it shouldn't be based on rank: while a difference in FP rank *often* corresponds to a difference in representable range, there are exceptions (notably with long double on non-x86 targets (as well as Win64) which is often equivalent to either double or __float128), and we should probably treat those like we do the integer types, i.e. ignore them.