[Mlir-commits] [mlir] [MLIR] Forward generated OpTy::create arguments (PR #170012)

Jason Rice llvmlistbot at llvm.org
Mon Dec 1 10:42:17 PST 2025


================
@@ -235,14 +235,14 @@ def NS_FOp : NS_Op<"op_with_all_types_constraint",
 
 // DEFS: FOp FOp::create(::mlir::OpBuilder &builder, ::mlir::Location location, ::mlir::Value a) {
 // DEFS:   ::mlir::OperationState __state__(location, getOperationName());
-// DEFS:   build(builder, __state__, a);
+// DEFS:   build(builder, __state__, static_cast<decltype(a)>(a));
----------------
ricejasonf wrote:

If the user passes by value say `T`, then the `std::forward<T>` will cast to `T&&`. I think it would still be fine, but then we are casting trivial types like `int` to reference types (ie `int&&`).

I can still change it if you would like.

https://github.com/llvm/llvm-project/pull/170012


More information about the Mlir-commits mailing list