lhamo, I entirely disagree with you. (That doesn't mean you're necessarily wrong, but here's why I disagree with you)
First of all, he should not stay just because he told them he would stay. First of all, what does that even mean - he said he would stay, now he has to work there the rest of his life? If not a lifetime, then what is the length of his promise? I bet that was never established. Stay for 5 years? 2 years? 1 year? 3 months? Who knows, if you intend to honor your "I will stay" promise you have to draw the line somewhere if you don't wanna work there the rest of your natural life. Where you draw that line is entirely up to him because he's the one who told them he would stay and I bet they didn't discuss how long he would stay. Now, if they DID discuss staying for a specific period of time, absolutely honor it. But if no time period was specified, then the promise to stay is a matter of interpretation.
Secondly, his promise to stay was a reflection of his INTENTION at the time they hired him back. People change their minds all the time. When you buy a house and get a cheaper interest rate because you tell the bank it's going to be an owner-occupied property (meaning you are living there yourself, it is not meant to be a rental property that you get income from) -- that is an indication of your intention. If you lie about your intention, that is definitely bad, and fraud in the case of deceiving the mortgage company to get a lower interest rate. But it's entirely possible, and happens all the time, that you truly honestly INTEND to live there yourself, and do so for a year or two, and then your plans change -- you move somewhere else, and it "becomes" a rental property. This is not fraud, because your intention at the time you got the mortgage was true, but people's plans change over time. Even though you enjoy the benefit of a lower interest rate for the 15 or 30 years of the "owner-occupied" mortgage, it's no longer owner occupied, but nobody has a problem with it. Because times change and people change.
Thirdly, I think he should either decide to stay or go. Do *NOT* tell them about the new offer, ESPECIALLY if you have no intention to take it. That could put you in a very bad position. Think about it. They hired you back after you already left once for greener pastures, they are paying you more than they used to, they asked you if you would stay and you said you would, now you have another offer from another company, which you don't intend to take, but you throw it up in their faces to try and negotiate more salary again?
If I was his boss at company A, and he did that to me, I would not give you any more money, and I would say to myself "well he has one foot out the door already - I better remember not to waste any promotions/raises on him because who knows if he'll stick around".
If I was his boss at company A and he just left, even if I found out it was to company B again for more money again, I would say to myself "well that sucks, I was really hoping he'd stay longer, but I can't say I blame him, each person has to do what's best for their career and I might do the same if I was in his position"
Either stay, or go. Walk left side, safe. Walk right side, safe. Walk middle, soooner or later, SQUISH just like grape. :-D