https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/146113
ArrayRef(std::nullopt) just got deprecated. This patch does the same to MutableArrayRef(std::nullopt). Since there are only a couple of uses, this patch does migration and deprecation at the same time. >From 5fae8431a310e14bbfad65d61ef2fec8b4ed10e7 Mon Sep 17 00:00:00 2001 From: Kazu Hirata <k...@google.com> Date: Fri, 27 Jun 2025 01:13:00 -0700 Subject: [PATCH] [ADT] Deprecate MutableArrayRef(std::nullopt) ArrayRef(std::nullopt) just got deprecated. This patch does the same to MutableArrayRef(std::nullopt). Since there are only a couple of uses, this patch does migration and deprecation at the same time. --- clang/lib/Serialization/ASTWriterDecl.cpp | 2 +- llvm/include/llvm/ADT/ArrayRef.h | 3 ++- mlir/lib/IR/Diagnostics.cpp | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/clang/lib/Serialization/ASTWriterDecl.cpp b/clang/lib/Serialization/ASTWriterDecl.cpp index 2e390dbe79ec6..7457c4920dd10 100644 --- a/clang/lib/Serialization/ASTWriterDecl.cpp +++ b/clang/lib/Serialization/ASTWriterDecl.cpp @@ -302,7 +302,7 @@ namespace clang { } MutableArrayRef<FunctionTemplateSpecializationInfo> getPartialSpecializations(FunctionTemplateDecl::Common *) { - return std::nullopt; + return {}; } template<typename DeclTy> diff --git a/llvm/include/llvm/ADT/ArrayRef.h b/llvm/include/llvm/ADT/ArrayRef.h index 3b05cfb326c82..247975cc2fb12 100644 --- a/llvm/include/llvm/ADT/ArrayRef.h +++ b/llvm/include/llvm/ADT/ArrayRef.h @@ -304,7 +304,8 @@ namespace llvm { /*implicit*/ MutableArrayRef() = default; /// Construct an empty MutableArrayRef from std::nullopt. - /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef<T>() {} + /*implicit*/ LLVM_DEPRECATED("Use {} or MutableArrayRef<T>() instead", "{}") + MutableArrayRef(std::nullopt_t) : ArrayRef<T>() {} /// Construct a MutableArrayRef from a single element. /*implicit*/ MutableArrayRef(T &OneElt) : ArrayRef<T>(OneElt) {} diff --git a/mlir/lib/IR/Diagnostics.cpp b/mlir/lib/IR/Diagnostics.cpp index 3a0f81d240336..3e337951bcd3f 100644 --- a/mlir/lib/IR/Diagnostics.cpp +++ b/mlir/lib/IR/Diagnostics.cpp @@ -727,7 +727,7 @@ SourceMgrDiagnosticVerifierHandlerImpl::computeExpectedDiags( raw_ostream &os, llvm::SourceMgr &mgr, const llvm::MemoryBuffer *buf) { // If the buffer is invalid, return an empty list. if (!buf) - return std::nullopt; + return {}; auto &expectedDiags = expectedDiagsPerFile[buf->getBufferIdentifier()]; // The number of the last line that did not correlate to a designator. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits