Why are TGeneric and TGeneric incompatible types?
TDataProviderThread is a descendant of TThreadBase, but TThreadBaseList<TDataProviderThread> is not a descendant of TThreadBaseList<TThreadBase>. That’s not inheritance, it’s called covariance, and though it seems intuitively like the same thing, it isn’t and it has to be supported separately. At the moment, Delphi doesn’t support it, though hopefully it will in a future release. Here’s the … Read more