State law can not override federal law.
The rail roads have thier own police force, they don't need to call the local cops to arrest you.
The SC said you have the right to defend yourself and have a gun in the home at the read to do that. It said nothing about outside the home. I doubt they ever will as it would be very hard to do with the diffrent state laws on carry.
THe goverment can and does restrict where you can carry a gun. Atleast inregaurds to federal property and federally regulated industrys.
If a case went to the SC over the right to carry a gun any where and a shop owners right to restrict what comes into thier store. Neither side would like the verdict I can assure.
That's a different issue. That is personal property rights. And those do trump my rights if I choose to be there.
FEDERAL property on the other hand is owned by the citizens. You and me. The government, who are simply stewards of that property have no authority (based on our constitution) to restrict my rights on property that belongs to the CITIZENS of the United States.
You can start trying to make exceptions all you want, but that is exactly what got us to this point in the first place.