| // RUN: mlir-opt %s -verify-diagnostics -split-input-file |
| |
| // Testing invalid IRDL IRs |
| |
| irdl.dialect @testd { |
| irdl.type @type { |
| // expected-error@+1 {{symbol '@foo' not found}} |
| %0 = irdl.base @foo |
| irdl.parameters(%0) |
| } |
| } |
| |
| // ----- |
| |
| irdl.dialect @testd { |
| irdl.type @type { |
| // expected-error@+1 {{the base type or attribute name should start with '!' or '#'}} |
| %0 = irdl.base "builtin.integer" |
| irdl.parameters(%0) |
| } |
| } |
| |
| // ----- |
| |
| irdl.dialect @testd { |
| irdl.type @type { |
| // expected-error@+1 {{the base type or attribute name should start with '!' or '#'}} |
| %0 = irdl.base "" |
| irdl.parameters(%0) |
| } |
| } |
| |
| // ----- |
| |
| irdl.dialect @testd { |
| irdl.type @type { |
| // expected-error@+1 {{the base type or attribute should be specified by either a name}} |
| %0 = irdl.base |
| irdl.parameters(%0) |
| } |
| } |
| |
| // ----- |
| |
| func.func private @not_a_type_or_attr() |
| |
| irdl.dialect @invalid_parametric { |
| irdl.operation @foo { |
| // expected-error@+1 {{symbol '@not_a_type_or_attr' does not refer to a type or attribute definition}} |
| %param = irdl.parametric @not_a_type_or_attr<> |
| irdl.results(%param) |
| } |
| } |