the reason it’s hidden from CINT is because users should not be able to pass an interpreted class deriving from the compiled TSelector through CINT - TChain::Process() will not be able to call the functions re-implemented in the derived, interpreted class, as the vtable doesn’t span the compiled-interpreted border. Instead, TTree::Process() has a hand crafted implementation for CINT. That’s the overload that claims to take a void*. We will try to fix that one to take a TSelector*. The implementation in TChain will continue to be hidden from CINT, but the doc will at least contain the (proper) one from TTree.