The whole tclLink.c file relies on a constraint
that a Tcl variable is only linked to one C variable
at a time. However, Tcl_LinkVar() does nothing
to detect and prevent violations of this constraint.
Detection is easy. Prevention could take two
forms. Either raise an error, or let the second
Tcl_LinkVar() call on the same Tcl variable
implicitly Tcl_UnlinkVar() any previous link that's
already in place.
Since changing the link's target sounds highly unlikely, flag it as an error.
fix committed.