I seem to have it sorted.
On a MAC, the executable permissions are copied over correctly.
On a PC, the permissions are not copied and have to be set. But, if the file exists with the correct permissions and you overwrite it the executable permissions are kept.
I don’t know if this is peculiar to Filezilla, but it threw me for a while as I couldn’t understand why my program wasn’t executing.
@Philip Ebbert I use WinSCP for uploading via the SFTP protocol to the PI. Have exactly what you describe above. Not a big deal since permissions stay in tact with overwriting the executable.
As with Phillip and Joost, when I first move an executable to the Pi/Linux, I have to set the permissions. If I later over-write with a new version, the permissions apply to the new version. But, if I delete the old version, then copy the files, I have to set the permissions again as with a new file.