New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
__private_extern__ deprecated by Xcode 4.6 and preventing a build #62
Comments
I ran into this too. Built one day and not the next. Realized I had installed Xcode 4.6 in the interim. |
How we can resolve the problem ? |
XCode told that we should replace this by attribute((visibility("hidden"))) ... |
I have try to replace all this private_extern with attribute((visibility("hidden"))), no error occurs on this but I encount an other:
in |
We've fixed all these issues internally and I'm working on an updated source release. Of course, there are a great many other changes we've made. The two main ones are that we are requiring iOS 6 and are removing iCloud support (but OmniPresence won't be in this next source drop). For this particular problem, we've added the following macros to OmniBase/macros.h:
With these, you can then declare globals variables like:
and functions like:
|
New source release pushed. Sorry it has been so long … iCloud ate up more time than I thought. |
for example in OmniGroup / Frameworks / OmniFoundation / OFStringDecoder.m (and several other classes)
private_extern CFCharacterSetRef OFDeferredDecodingCharacterSet(void);
private_extern unichar OFCharacterForDeferredDecodedByte(unsigned int byte);
private_extern unsigned int OFByteForDeferredDecodedCharacter(unichar uchar);
are now getting rejected by XCode 4.6 with "Use of private_extern on a declaration may not produce external symbol private to the linkage unit and is deprecated"
The text was updated successfully, but these errors were encountered: