From d464f6397ab294492019573f83b8a6d2bac7338b Mon Sep 17 00:00:00 2001 From: Kazu Hirata Date: Thu, 17 Jul 2025 16:16:51 -0700 Subject: [PATCH] [mlir] Deprecate NamedAttrList(std::nullopt_t) (NFC) This patch deprecates NamedAttrList(std::nullopt_t) to avoid use of std::nullopt outside the context of std::optional. --- mlir/include/mlir/IR/OperationSupport.h | 1 + mlir/lib/AsmParser/Parser.cpp | 4 ++-- mlir/unittests/Debug/FileLineColLocBreakpointManagerTest.cpp | 2 +- mlir/unittests/IR/OperationSupportTest.cpp | 4 ++-- mlir/unittests/IR/ValueTest.cpp | 2 +- mlir/unittests/Transforms/DialectConversion.cpp | 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) diff --git a/mlir/include/mlir/IR/OperationSupport.h b/mlir/include/mlir/IR/OperationSupport.h index 65e6d4f64e36c..5282c47dd7036 100644 --- a/mlir/include/mlir/IR/OperationSupport.h +++ b/mlir/include/mlir/IR/OperationSupport.h @@ -802,6 +802,7 @@ class NamedAttrList { using size_type = size_t; NamedAttrList() : dictionarySorted({}, true) {} + LLVM_DEPRECATED("Use NamedAttrList() instead", "NamedAttrList()") NamedAttrList(std::nullopt_t none) : NamedAttrList() {} NamedAttrList(ArrayRef attributes); NamedAttrList(DictionaryAttr attributes); diff --git a/mlir/lib/AsmParser/Parser.cpp b/mlir/lib/AsmParser/Parser.cpp index 756d3d01a4534..435ff713a1b29 100644 --- a/mlir/lib/AsmParser/Parser.cpp +++ b/mlir/lib/AsmParser/Parser.cpp @@ -1198,8 +1198,8 @@ Value OperationParser::createForwardRefPlaceholder(SMLoc loc, Type type) { auto name = OperationName("builtin.unrealized_conversion_cast", getContext()); auto *op = Operation::create( getEncodedSourceLocation(loc), name, type, /*operands=*/{}, - /*attributes=*/std::nullopt, /*properties=*/nullptr, /*successors=*/{}, - /*numRegions=*/0); + /*attributes=*/NamedAttrList(), /*properties=*/nullptr, + /*successors=*/{}, /*numRegions=*/0); forwardRefPlaceholders[op->getResult(0)] = loc; forwardRefOps.insert(op); return op->getResult(0); diff --git a/mlir/unittests/Debug/FileLineColLocBreakpointManagerTest.cpp b/mlir/unittests/Debug/FileLineColLocBreakpointManagerTest.cpp index f688fa97e8409..6a81422b6b66b 100644 --- a/mlir/unittests/Debug/FileLineColLocBreakpointManagerTest.cpp +++ b/mlir/unittests/Debug/FileLineColLocBreakpointManagerTest.cpp @@ -24,7 +24,7 @@ static Operation *createOp(MLIRContext *context, Location loc, unsigned int numRegions = 0) { context->allowUnregisteredDialects(); return Operation::create(loc, OperationName(operationName, context), {}, {}, - std::nullopt, OpaqueProperties(nullptr), {}, + NamedAttrList(), OpaqueProperties(nullptr), {}, numRegions); } diff --git a/mlir/unittests/IR/OperationSupportTest.cpp b/mlir/unittests/IR/OperationSupportTest.cpp index 4b800fa36a375..7bc1a044d0dad 100644 --- a/mlir/unittests/IR/OperationSupportTest.cpp +++ b/mlir/unittests/IR/OperationSupportTest.cpp @@ -24,7 +24,7 @@ static Operation *createOp(MLIRContext *context, ArrayRef operands = {}, context->allowUnregisteredDialects(); return Operation::create(UnknownLoc::get(context), OperationName("foo.bar", context), resultTypes, - operands, std::nullopt, nullptr, {}, numRegions); + operands, NamedAttrList(), nullptr, {}, numRegions); } namespace { @@ -236,7 +236,7 @@ TEST(OperationFormatPrintTest, CanPrintNameAsPrefix) { Operation *op = Operation::create( NameLoc::get(StringAttr::get(&context, "my_named_loc")), OperationName("t.op", &context), builder.getIntegerType(16), {}, - std::nullopt, nullptr, {}, 0); + NamedAttrList(), nullptr, {}, 0); std::string str; OpPrintingFlags flags; diff --git a/mlir/unittests/IR/ValueTest.cpp b/mlir/unittests/IR/ValueTest.cpp index fc671be39f1eb..97e32d474d522 100644 --- a/mlir/unittests/IR/ValueTest.cpp +++ b/mlir/unittests/IR/ValueTest.cpp @@ -22,7 +22,7 @@ static Operation *createOp(MLIRContext *context, ArrayRef operands = {}, context->allowUnregisteredDialects(); return Operation::create(UnknownLoc::get(context), OperationName("foo.bar", context), resultTypes, - operands, std::nullopt, nullptr, {}, numRegions); + operands, NamedAttrList(), nullptr, {}, numRegions); } namespace { diff --git a/mlir/unittests/Transforms/DialectConversion.cpp b/mlir/unittests/Transforms/DialectConversion.cpp index 7bb27f721414c..6418c9dc0ac5b 100644 --- a/mlir/unittests/Transforms/DialectConversion.cpp +++ b/mlir/unittests/Transforms/DialectConversion.cpp @@ -15,7 +15,7 @@ static Operation *createOp(MLIRContext *context) { context->allowUnregisteredDialects(); return Operation::create(UnknownLoc::get(context), OperationName("foo.bar", context), {}, {}, - std::nullopt, /*properties=*/nullptr, {}, 0); + NamedAttrList(), /*properties=*/nullptr, {}, 0); } namespace {