The interesting thing about this is that in a case-by-case basis some folks can retain dual citizenships.The destroyer was named after his grandfather and father. Although she has the same name, he is after all John S. McCain III. As far as being borned in Panama, his father was stationed there at that time. Otherwise he would have been borned in America. The Supreme Court has ruled in favor of military dependents borned abroad as American citizenships before. More than military families also use this loophole for American citizenship. America won't deny American citizenship to foreign borned military dependents whether from admirals, corporals, or privates.
I know of a case of a US military member who is a naturalized US Citizen from Portugal (as is the spouse). Their child was born in Brazil and received passports from the USA, Brazil and Portugal.
(Sorry for going way off-topic)