================ @@ -10685,6 +10724,7 @@ QualType Sema::CheckMultiplyDivideOperands(ExprResult &LHS, ExprResult &RHS, if (compType.isNull() || !compType->isArithmeticType()) return InvalidOperands(Loc, LHS, RHS); if (IsDiv) { + DetectPrecisionLossInComplexDivision(*this, RHS.get()->getType(), Loc); ---------------- Maetveis wrote:
> How about if we have _Complex float / double? Or _Complex double / float? > This should need a promotion, and it's not in the patch. Why would that need a promotion besides the usual arithmetic conversions (i.e. to double and not long double)? Precision loss from using the complex division arithmetic formulas does not come into play here, because its elementwise. Usual arithmetic conversions are already applied at this point: https://github.com/llvm/llvm-project/pull/131477/files#diff-3c28567b5e0c77d68f174541a0b77f5a85d093f58b89cd3675ee04a550a44880R10718-R10719 https://github.com/llvm/llvm-project/pull/131477 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits