// RUN: llvm-tblgen %s

// CHECK:      def One {
// CHECK-NEXT:   list<string> names = ["Jeffrey Sinclair"];
// CHECK-NEXT:   string element = "Jeffrey Sinclair";
// CHECK-NEXT:   list<string> rest = [];
// CHECK-NEXT:   int null = 1;
// CHECK-NEXT:   string NAME = ?;
// CHECK-NEXT: }
// CHECK-NEXT: def Three {
// CHECK-NEXT:   list<string> names = ["Tom", "Dick", "Harry"];
// CHECK-NEXT:   string element = "Tom";
// CHECK-NEXT:   list<string> rest = ["Dick", "Harry"];
// CHECK-NEXT:   int null = 0;
// CHECK-NEXT:   string NAME = ?;
// CHECK-NEXT: }

class List<list<string> n> {
  list<string> names = n;
}

class CAR<string e> {
  string element = e;
}

class CDR<list<string> r, int n> {
  list<string> rest = r;
  int null = n;
}

class NameList<list<string> Names> :
  List<Names>, CAR<!head(Names)>, CDR<!tail(Names), !empty(!tail(Names))>;

def Three : NameList<["Tom", "Dick", "Harry"]>;

def One : NameList<["Jeffrey Sinclair"]>;
