Fix "Make the specialiser handle polymorphic specialisation"
The commit which enabled the specialiser to handle polymorphic recursion was reverted due to #21229 (closed)
The revert commit is:
This ticket is to track the progress towards fixing that patch (more history and ideas can be read on #21229 (closed))
A stalled MR for fixing the issues described in #21229 (closed) is !7788 (closed)