[flang][OpenMP] Make object identity more precise

Derived type components may use a given `Symbol` regardless of what
parent objects they are a part of. Because of that, simply using a
symbol address is not sufficient to determine object identity.

Make the designator a part of the IdTy. To compare identities, when
symbols are equal (and non-null), compare the designators.
in 0 seconds and was queued for 89 minutes and 11 seconds