[Mlir-commits] [mlir] [MLIR][Toy] Fix incorrect return value in PrintExprAST codegen (PR #226924)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Mon Sep 28 02:48:12 PDT 2026
https://github.com/vaachang updated https://github.com/llvm/llvm-project/pull/226924
>From bc3a01b9dd12f16381bfe14fdb4d78fa5a7c059e Mon Sep 17 00:00:00 2001
From: vabchang <vabchang at qq.com>
Date: Mon, 28 Sep 2026 17:01:47 +0800
Subject: [PATCH] [MLIR][Toy] Fix error handling in PrintExprAST codegen
The `mlirGen` function for `PrintExprAST` incorrectly returned
`mlir::success()` when code generation failed. This patch corrects
it to return `mlir::failure()` to properly propagate the error.
---
mlir/examples/toy/Ch2/mlir/MLIRGen.cpp | 2 +-
mlir/examples/toy/Ch3/mlir/MLIRGen.cpp | 2 +-
mlir/examples/toy/Ch4/mlir/MLIRGen.cpp | 2 +-
mlir/examples/toy/Ch5/mlir/MLIRGen.cpp | 2 +-
mlir/examples/toy/Ch6/mlir/MLIRGen.cpp | 2 +-
mlir/examples/toy/Ch7/mlir/MLIRGen.cpp | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/mlir/examples/toy/Ch2/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch2/mlir/MLIRGen.cpp
index a9592bcd7814a..e44a0977cd637 100644
--- a/mlir/examples/toy/Ch2/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch2/mlir/MLIRGen.cpp
@@ -416,7 +416,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
diff --git a/mlir/examples/toy/Ch3/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch3/mlir/MLIRGen.cpp
index 8c21951948496..a550ceef1af9d 100644
--- a/mlir/examples/toy/Ch3/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch3/mlir/MLIRGen.cpp
@@ -416,7 +416,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
diff --git a/mlir/examples/toy/Ch4/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch4/mlir/MLIRGen.cpp
index 6b7ab40299be5..644b706098114 100644
--- a/mlir/examples/toy/Ch4/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch4/mlir/MLIRGen.cpp
@@ -420,7 +420,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
diff --git a/mlir/examples/toy/Ch5/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch5/mlir/MLIRGen.cpp
index 6b7ab40299be5..644b706098114 100644
--- a/mlir/examples/toy/Ch5/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch5/mlir/MLIRGen.cpp
@@ -420,7 +420,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
diff --git a/mlir/examples/toy/Ch6/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch6/mlir/MLIRGen.cpp
index 6b7ab40299be5..644b706098114 100644
--- a/mlir/examples/toy/Ch6/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch6/mlir/MLIRGen.cpp
@@ -420,7 +420,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
diff --git a/mlir/examples/toy/Ch7/mlir/MLIRGen.cpp b/mlir/examples/toy/Ch7/mlir/MLIRGen.cpp
index 73133247335dc..c72df8890b38d 100644
--- a/mlir/examples/toy/Ch7/mlir/MLIRGen.cpp
+++ b/mlir/examples/toy/Ch7/mlir/MLIRGen.cpp
@@ -640,7 +640,7 @@ class MLIRGenImpl {
return mlirGen(*ret);
if (auto *print = dyn_cast<PrintExprAST>(expr.get())) {
if (mlir::failed(mlirGen(*print)))
- return mlir::success();
+ return mlir::failure();
continue;
}
More information about the Mlir-commits
mailing list