// RUN: mlir-opt --mlir-disable-threading -split-input-file -verify-diagnostics %s func.func @verify_operand_type() { %0 = arith.constant 1 : index // expected-error@+1 {{op operand #0 must be 32-bit signless integer, but got 'index'}} "test.verifiers"(%0) ({ %1 = arith.constant 2 : index }) : (index) -> () return } // ----- func.func @verify_nested_op_block_trait() { %0 = arith.constant 1 : i32 // expected-remark@+1 {{success run of verifier}} "test.verifiers"(%0) ({ %1 = arith.constant 2 : index // expected-error@+1 {{op requires one region}} "test.verifiers"(%1) : (index) -> () }) : (i32) -> () return } // ----- func.func @verify_nested_op_operand() { %0 = arith.constant 1 : i32 // expected-remark@+1 {{success run of verifier}} "test.verifiers"(%0) ({ %1 = arith.constant 2 : index // expected-error@+1 {{op operand #0 must be 32-bit signless integer, but got 'index'}} "test.verifiers"(%1) ({ %2 = arith.constant 3 : index }) : (index) -> () }) : (i32) -> () return } // ----- func.func @verify_nested_isolated_above() { %0 = arith.constant 1 : i32 // expected-remark@+1 {{success run of verifier}} "test.verifiers"(%0) ({ // expected-remark@-1 {{success run of region verifier}} %1 = arith.constant 2 : i32 // expected-remark@+1 {{success run of verifier}} "test.verifiers"(%1) ({ // expected-remark@-1 {{success run of region verifier}} %2 = arith.constant 3 : index }) : (i32) -> () }) : (i32) -> () return }