I believe this is the first time posting in a while, however, I need to make this comment coming from a third world country, were there are no rules that forbids the employer from forcing the employee not to speak about the salary and this is my take away.
- Employees will talk about their salary regardless of the rules placed by the employer.
- They might use that information to their advantage at the time of negotiating a raise, not by letting the employer know that they know but rather by negotiating with the knowledge of how they stack against other people in the market.
Regardless of what the contract or the employee guidelines state, in this date and age, no one can really know if you speak about you wage, unless the other party go and spill the beans about, or you're dumb enough to let the employer know that you actually spoke about with someone.
On another note. IF this is really stipulated in contract and you sign it, that means that you didn't care enough at the moment of signing it to just walk out, and IF they are that disgruntled, they can just file a complaint, but is hard when people are afraid to put a name and address to their complaint.
I'm sorry if this was already posted (I got bored after the 5th page), employees are not allowed to be forced to not talk about their wages/salary in BC, https://www.bclaws.gov.bc.ca/civix/document/id/complete/statreg/96244_01#section8, so if they are really that disgruntled, just make an official complain.