a new transformation --replace-dependent-name

this pass tries to replace dependent names if they can
be resolved