Tim, there is no use of an identical generic identifier in a subclass. The parent (RingBuffer) uses 'T' and the subclass uses 'TU' (?)
By question was: why use 'TU' at all, when 'T' is already available to the subclass. T is always the same as TU.
Regards, Fil.