[Mlir-commits] [mlir] [MLIR][IRDL][Python] Fix error while composing `irdl.any_of` and `irdl.base` (PR #187914)
Théo Degioanni
llvmlistbot at llvm.org
Mon Mar 23 00:01:24 PDT 2026
================
@@ -736,3 +736,44 @@ class AssignNoneOnNonOptionalOp(
except ValueError as e:
# CHECK: only optional operand can be a keyword parameter
print(e)
+
+
+# CHECK: TEST: testExtDialectWithAttrInOp
+ at run
+def testExtDialectWithAttrInOp():
+ class TestAttrInOp(Dialect, name="ext_attr_in_op"):
+ pass
+
+ class OpWithAttr(TestAttrInOp.Operation, name="op_with_attr"):
+ a: IntegerAttr | StringAttr
+ b: IntegerType[32] | IntegerType[64]
----------------
Moxinilian wrote:
The reason it is like this in IRDL is because the separation between types and attributes is an MLIR implementation detail. Conceptually they are the same (a type is an attribute that has a flag allowing it to be in an operand and result position).
https://github.com/llvm/llvm-project/pull/187914
More information about the Mlir-commits
mailing list