[clang] Don't wrap immediate invocations in ConstantExprs within constexpr initializers (PR #89565)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 29 07:40:14 PDT 2024
================
@@ -16548,11 +16548,10 @@ static void CheckImplicitConversion(Sema &S, Expr *E, QualType T,
std::string PrettySourceValue = toString(Value, 10);
std::string PrettyTargetValue = PrettyPrintInRange(Value, TargetRange);
- S.DiagRuntimeBehavior(
- E->getExprLoc(), E,
- S.PDiag(diag::warn_impcast_integer_precision_constant)
- << PrettySourceValue << PrettyTargetValue << E->getType() << T
- << E->getSourceRange() << SourceRange(CC));
----------------
cor3ntin wrote:
FYI, C23 has the behavior that I expected C++ to have https://compiler-explorer.com/z/YTzMq6Geh
C++ only complain about narrowing with braces init list.
It seems intended but it is a very odd behavior
We still have a bug of duplicated warning https://compiler-explorer.com/z/958dfG3G5
https://github.com/llvm/llvm-project/pull/89565
More information about the cfe-commits
mailing list