54 lines
1.5 KiB
TableGen
54 lines
1.5 KiB
TableGen
// RUN: mlir-tblgen -I %S/../../include %s 2>&1 | FileCheck %s --implicit-check-not warning:
|
|
|
|
include "mlir/IR/OpBase.td"
|
|
|
|
def Test_Dialect : Dialect {
|
|
let name = "test_dialect";
|
|
}
|
|
|
|
def OpTraitA : NativeOpTrait<"OpTraitA">, Deprecated<"use `bar` instead">;
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def A_AsField {
|
|
NativeOpTrait value = OpTraitA;
|
|
}
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def B_InList {
|
|
list<NativeOpTrait> value = [OpTraitA];
|
|
}
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def C_InListList {
|
|
list<list<NativeOpTrait>> value = [[OpTraitA]];
|
|
}
|
|
|
|
class Base;
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def D_InDagAsOperator {
|
|
dag value = (OpTraitA $test);
|
|
}
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def E_InDagAsArg : Base {
|
|
dag value = (ins OpTraitA:$test);
|
|
}
|
|
|
|
class ThingTakingList<list<NativeOpTrait> l> {
|
|
list<NativeOpTrait> i = l; // avoid unused variable warning.
|
|
}
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def F_AsFieldWithinAnonymousDef {
|
|
ThingTakingList value = ThingTakingList<[OpTraitA]>;
|
|
}
|
|
|
|
// CHECK: :[[# @LINE + 1]]:{{[0-9]+}}: warning: Using deprecated def `OpTraitA`
|
|
def G_InDagAsAnonymousDefOperator {
|
|
dag value = (ThingTakingList<[OpTraitA]> $test);
|
|
}
|
|
|
|
def H_ButNotTransitivelyInNonAnonymousDef {
|
|
Base value = E_InDagAsArg;
|
|
}
|