Perhaps this topic would be more relevant on SO, but the circumstances in which I get the issue may make it relevant in the Swift forum.
I have a sample project in which I play with all kinds of goodness of SwiftUI, property wrappers, Firebase and combining all these things.
I wanted to try out the latest master toolchain snapshot (from Oct. 10th) on this project, and got a linker error.
The linker error is with a third party framework written in Objective-C.
The error is:
Undefined symbols for architecture x86_64: "___isOSVersionAtLeast", referenced from: _FIRInstanceIDCurrentLocale in FirebaseInstanceID(FIRInstanceIDUtilities.o) ld: symbol(s) not found for architecture x86_64 clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
The reason I am posting in the Swift forums is that I do not get this linker error using the toolchain that comes with Xcode 11.1.
So I am guessing that the missing symbol is something that the compiler injects?
From what I could gather on Stack Overflow, the reference to the symbol comes whenever a framework uses availability macros.
So my questions are:
What is this symbol?
Where is it supposed to originate from?
Is it expected that there is a linker error using the latest snapshot toolchain, while the linker error is not occurring when I build with the Xcode 11.1 toolchain?
Are there any workarounds that I could apply.