Let's please keep the facts straight, here. John McCain was not born in the Canal Zone. Coco Solo Hospital was not built until 1941. John McCain was born in 1936. That means he was born in the hospital in Colon, Panama. That is what his birth certificate indicates. He was not born on US soil.
Hence he was born on US soil