1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-tblgen %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker// XFAIL: vg_leak 3*9880d681SAndroid Build Coastguard Worker// CHECK: No subst 4*9880d681SAndroid Build Coastguard Worker// CHECK: No foo 5*9880d681SAndroid Build Coastguard Worker// CHECK: RECURSE foo 6*9880d681SAndroid Build Coastguard Worker 7*9880d681SAndroid Build Coastguard Workerclass Recurse<string t> { 8*9880d681SAndroid Build Coastguard Worker string Text = t; 9*9880d681SAndroid Build Coastguard Worker} 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workerclass Text<string text> : 12*9880d681SAndroid Build Coastguard Worker Recurse<!subst("RECURSE", "RECURSE", !subst("NORECURSE", "foo", text))>; 13*9880d681SAndroid Build Coastguard Worker 14*9880d681SAndroid Build Coastguard Workerdef Ok1 : Text<"No subst">; 15*9880d681SAndroid Build Coastguard Workerdef Ok2 : Text<"No NORECURSE">; 16*9880d681SAndroid Build Coastguard Workerdef Trouble : Text<"RECURSE NORECURSE">; 17