At my current job, the hourly starting wage was posted in the job description. So was the incentive to complete training classes in a set time period to gain a posted increase in pay. After the 1st year, all raises are confidential, but based on some weird formula that, for example, if there are 5 of you in a group, your supervisor has to rank you 1-5. 1 gets the largest raise while 5 gets the least amount, and the amounts are in percentages. So the 5 guys get together and start yapping about what percentage increase they each got. It doesn't take long for all of them to know who got what percentage to figure out who got ranked higher. Then it starts causing issues with "I do more work than that guy."
When you have a person that's been there 30 years and they get a 1% increase in pay, and you have a person that's been there 2 years, and they get a 1.2% increase in pay, chances are pretty good that the 30 year guy still got a much larger $/hour increase than the 2 year guy, yet, for some reason, the 30 year guy complains that the 2 year guy got a higher percentage, when, in fact, the 30 year guy got more money.
I am not used to anyone thinking they know what I'm getting paid and when they come up to me and tell me they know what I'm getting paid and its X (and they're wrong), I just tell them that's between the company and me and none of their business.
At my last job, everyone that was hourly got paid the same after 2 years if you were doing the same job description. Didn't matter if you were there 2 years or 20. You were doing the same job, so you got paid the same.
Salaried positions were different, and those were confidential. I never minded not knowing what my salaried coworkers were making. It wasn't my business.