https://github.com/SamrudhNelli updated https://github.com/llvm/llvm-project/pull/180376
>From 6009736c9f52e136483a9c5804cb8dfee3826031 Mon Sep 17 00:00:00 2001 From: Samrudh Nelli <[email protected]> Date: Sun, 8 Feb 2026 04:33:08 +0530 Subject: [PATCH] [clang] Fix crashes when initializing constexpr int* with floating-point Call isNullPointer() only when we are sure that the Rvalue is a pointer. --- clang/lib/Sema/SemaInit.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/clang/lib/Sema/SemaInit.cpp b/clang/lib/Sema/SemaInit.cpp index ff278bc7471bd..3c19512595bae 100644 --- a/clang/lib/Sema/SemaInit.cpp +++ b/clang/lib/Sema/SemaInit.cpp @@ -8503,8 +8503,9 @@ ExprResult InitializationSequence::Perform(Sema &S, Expr::EvalResult ER; if (Entity.getType()->getAs<PointerType>() && CurInit.get()->EvaluateAsRValue(ER, S.Context) && - !ER.Val.isNullPointer()) { + (!ER.Val.isLValue() || !ER.Val.isNullPointer())) { S.Diag(Kind.getLocation(), diag::err_c23_constexpr_pointer_not_null); + return ExprError(); } } _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
