friend の問題じゃなくて、TST<int> と TST<double> は別の型なので、
TST<int>::operator= から TST<double>::pt (private) へのアクセスが
できないってだけじゃないの?