| // RUN: mlir-opt %s --irdl-file=%S/test-type.irdl.mlir -split-input-file -verify-diagnostics | FileCheck %s |
| |
| func.func @succeededTypeVerifier() { |
| // CHECK: "testd.any"() : () -> !testd.singleton |
| "testd.any"() : () -> !testd.singleton |
| |
| // CHECK-NEXT: "testd.any"() : () -> !testd.parametrized<f32, i32> |
| "testd.any"() : () -> !testd.parametrized<f32, i32> |
| |
| // CHECK: "testd.any"() : () -> !testd.parametrized<i1, i64> |
| "testd.any"() : () -> !testd.parametrized<i1, i64> |
| |
| return |
| } |
| |
| // ----- |
| |
| func.func @failedSingletonVerifier() { |
| // expected-error@+1 {{expected 0 type arguments, but had 1}} |
| "testd.any"() : () -> !testd.singleton<i32> |
| } |
| |
| // ----- |
| |
| func.func @failedParametrizedVerifierWrongNumOfArgs() { |
| // expected-error@+1 {{expected 2 type arguments, but had 1}} |
| "testd.any"() : () -> !testd.parametrized<i32> |
| } |
| |
| // ----- |
| |
| func.func @failedParametrizedVerifierWrongArgument() { |
| // expected-error@+1 {{'i1' does not satisfy the constraint}} |
| "testd.any"() : () -> !testd.parametrized<i32, i1> |
| } |