hubert.reinterpretcast added inline comments.
================ Comment at: clang/lib/Sema/SemaExpr.cpp:1540 // Diagnose attempts to convert between __ibm128, __float128 and long double - // where such conversions currently can't be handled. + // in arithmetic or comparison. if (unsupportedTypeConversion(*this, LHSType, RHSType)) ---------------- The ternary operator seems to be something other than (straightforward) "arithmetic or comparison". ================ Comment at: clang/test/CodeGen/ibm128-cast.c:46 !b ? w : l; // expected-error {{incompatible operand types ('__ibm128' and 'long double')}} } #elif __LONG_DOUBLE_IBM128__ ---------------- Should have compound assignment tests for C as well. ================ Comment at: clang/test/CodeGen/ibm128-cast.c:67 + !b ? w : l; // expected-no-error } #endif ---------------- Should have compound assignment tests for C as well. ================ Comment at: clang/test/Sema/float128-ld-incompatibility.cpp:13 +long double ld{qf()}; // expected-error {{non-constant-expression cannot be narrowed from type '__float128' to 'long double' in initializer list}} expected-note {{insert an explicit cast to silence this issue}} +__float128 q{ldf()}; // expected-no-error ---------------- Should also test `__ibm128` cases. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D109751/new/ https://reviews.llvm.org/D109751 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits