Supported recursive type with type variables.