I've used a generic wrapper function utilizing implicit function specializations that can then be used to access any enumerator.
The current version of FPC does not support {$modeswitch implicitfunctionspecialization}.
With code
for S in specialize WrapClass<TInverseStringsEnumerator>(SList.GetInverseEnumerator) do
Writeln(S);
there is a memory leak.
With
for S in specialize WrapRecord<TInverseStringsEnumerator>(SList.GetInverseEnumerator) do
Writeln(S);
not.