Someone must have already thought about this. If you know who, I'd appreciate a reference.
In our Kripkean era, most philosophers hold that sentences like 'Hesperus=Phosphorus' and 'Cicero=Tully' are necessarily true, if they are true. In other words, if these two sentences are true in our world, then they are true in every possible world (accessible to ours).
But I'm not so sure about this received view. In other possible worlds, Venus does not exist, and therefore in those other worlds the names 'Hesperus' and 'Phosphorus' lack referents. But on most standard semantics for non-referring names, 'Hesperus=Phosphorus' will NOT be true. (For the free logic cognoscenti: that sentence will be false on a negative semantics, truth-valueless on neutral semantics, and truth-valueless on a positive supervaluational semantics. It could only be true on a positive, inner-domain/ outer-domain [roughly Meinongian] semantics.) In short: 'Hesperus=Phosphorus' will be untrue on 3 of the 4 extant semantics for non-referring names.
So, if we want to maintain that 'Hesperus=Phosphorus' is necessary if true, then it looks like we're stuck with only unpalatable options:
(i) accept the roughly Meinongian semantics that makes 'Hesperus=Phosporus' true in possible worlds where Venus does not exist.
(ii) Say that Venus exists in all possible worlds accessible from ours.
But I would rather accept that 'Hesperus=Phosphorus' is NOT a necessary truth, than accept either (i) or (ii).