When merging use associations into a generic, we weren't handling
the case where the name that was use associated was itself a use
association. This is fixed by following that association to its
ultimate symbol (useUltimate in DoAddUse).
An example of the bug is m12d in resolve17.f90. g is associated
with gc in m12c which is associated with gb in m12b. It was that
last association that we weren't correctly following.