From bce17034157fdfe4d898d30366c1eeca3442fa3d Mon Sep 17 00:00:00 2001 From: Andrei Golubev Date: Mon, 25 Mar 2024 23:47:39 +0200 Subject: [PATCH] [ODS][NFC] Cast range.size() to int32_t in accumulation (#85629) Using range.size() "as is" means we accumulate 'size_t' values into 'int32_t' variable. This may produce narrowing conversion warnings (particularly, on MSVC). The surrounding code seems to cast .size() to 'int32_t' so following this practice seems safe enough. Co-authored-by: Ovidiu Pintican --- mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp index 0d81912afb61..3a697520dfad 100644 --- a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp +++ b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp @@ -3057,7 +3057,7 @@ void OpEmitter::genCodeForAddingArgAndRegionForBuilder( body << llvm::formatv( "static_cast(std::accumulate({0}.begin(), {0}.end(), 0, " "[](int32_t curSum, ::mlir::ValueRange range) {{ return curSum + " - "range.size(); }))", + "static_cast(range.size()); }))", operandName); } else { body << "static_cast(" << getArgumentName(op, i) << ".size())";