On Wed, 10 Jun 2020, at 23:09, Richard Shaw wrote:
So why does this only show up in MinGW? If a 64bit pointer can't find it a 32bit int, shouldn't I also get an error when building for 64bit Fedora?

Because ShellExecute is a Windows function, thus that part of the code won't be compiled when building for 64 bit Linux.