A few years back, a friend and colleague, Mr Wee, whom I worked with on a volunteer capacity, was "forced" to enter into a new contract in the company he worked for (full-time). Should he not sign the new contract, he would be terminated immediately. The new contract effectively transfers him to another company, and terminates his retirement benefits, which was, 1 month's pay for each year worked. My friend and his wife, each of whom had worked for 25 years, effectively lost nearly SGD$150K because of this issue.
Today, I have found the following:
If your employment agreement promises to pay some money on retirements but not upon ending of your employment by reason of the employer ceasing to carry on business from whatever reason, or, by reason of the employer transferring the whole or part of his undertaking or property as the case may be (‘event’), the law will entitle you to the same amount of money upon that event happening. (Section 47(2))
from the Law Society's employment law site.
So, it seems that my friend and his wife got cheated. Because, had he not agreed to sign the contract, he would be able to get that 25 month's salary for both him and his wife.