Pretty much same reason as for the 'from' pointer of shapekeys - runtime data creating loops and 'ghost' dependencies between datablocks. We need to handle them in cases like remapping, but whall not take them into account to check dependencies between datablocks... :/