Inline recursive types with type arguments