In my humble opinion, in the USA, declaring a public or semi-public space, regardless of ownership, a gun-free zone is an infringement of right to bear arms and therefore a violation of the Second Amendment.
I hold this amendment to bind any person or authority as it contains no direct or implicit address, unlike other amendments, which forbid certain actions of federal Congress, courts or authorities in general.
Any clause banning guns in the contract between the premises owner and the invitee is void for two reasons:
- first, it is usually forced by a monopoly or quasi-monopoly,
- second, constitutional rights cannot be alienated in any other way than by law, not even voluntarily.
I also think that the establisher of a gun-free zone, whether it be the premises owner, municipality, state or the Union, is liable for the damages (injury or death) caused to unarmed invitees by shooting accidents therein.