NotAGenericType occurs when a non-generic type is used where a generic type is expected: in type or function instantiation. Example: type T int var _ T[int]