Yes, he was born to American parents (only need one, to qualify) in Panama. Either having an American parent OR being born on a US military base to a member of the US military makes him a US citizen. This was proved when he ran. Someone born to an American or Canadian citizen in Canada or the US, respectively, automatically have dual citizenship. Cruz chose to only be a US citizen.