Skip to content

Commit 48e89a8

Browse files
authored
[mlir][transform] Fix Wtype-limits warning (#146898)
``` warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits] ``` `size_t` is unsigned and always non-negative, whereas `getInt()` returns a signless `int64_t`. To ensure type compatibility and eliminate the warning, `dynamicOptionIdx` should be changed to `int64_t`.
1 parent db03c27 commit 48e89a8

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

mlir/lib/Dialect/Transform/IR/TransformOps.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -799,8 +799,8 @@ transform::ApplyRegisteredPassOp::apply(transform::TransformRewriter &rewriter,
799799
if (auto paramOperand = dyn_cast<transform::ParamOperandAttr>(valueAttr)) {
800800
// The corresponding value attribute(s) is/are passed in via a param.
801801
// Obtain the param-operand via its specified index.
802-
size_t dynamicOptionIdx = paramOperand.getIndex().getInt();
803-
assert(dynamicOptionIdx < dynamicOptions.size() &&
802+
int64_t dynamicOptionIdx = paramOperand.getIndex().getInt();
803+
assert(dynamicOptionIdx < static_cast<int64_t>(dynamicOptions.size()) &&
804804
"the number of ParamOperandAttrs in the options DictionaryAttr"
805805
"should be the same as the number of options passed as params");
806806
ArrayRef<Attribute> attrsAssociatedToParam =
@@ -1015,8 +1015,9 @@ LogicalResult transform::ApplyRegisteredPassOp::verify() {
10151015
std::function<LogicalResult(Attribute)> checkOptionValue =
10161016
[&](Attribute valueAttr) -> LogicalResult {
10171017
if (auto paramOperand = dyn_cast<transform::ParamOperandAttr>(valueAttr)) {
1018-
size_t dynamicOptionIdx = paramOperand.getIndex().getInt();
1019-
if (dynamicOptionIdx < 0 || dynamicOptionIdx >= dynamicOptions.size())
1018+
int64_t dynamicOptionIdx = paramOperand.getIndex().getInt();
1019+
if (dynamicOptionIdx < 0 ||
1020+
dynamicOptionIdx >= static_cast<int64_t>(dynamicOptions.size()))
10201021
return emitOpError()
10211022
<< "dynamic option index " << dynamicOptionIdx
10221023
<< " is out of bounds for the number of dynamic options: "

0 commit comments

Comments
 (0)