Ok, here's what happened. To open the project in XCode 11 I had to convert Swift from 3.x to 4.x. When I made some manual changes to add the @objc tag, I errantly added it to a few private functions in the code. I'm guessing the 'out of range' message meant 'hey, we can't see those functions you idiot".
I removed it and now builds fine on all devices & ios versions.
Hopefully this helps someone in he future...
Great and thanks for feedback.
Don't forget to close the thread by marking your own answer as correct.