Hi guys, A while back Apple introduced support for lightweight (type-erasing) generics in Objective-C. In my opinion, this is a really nice feature because it increases (compile-time) type safety and makes API contracts much more explicit. Since there is nothing particular to Apple’s flavour of Objective-C in respect to this feature, GNUstep automatically gained support for it through clang. Still, the interfaces require updating to expose this to users and I’ve now gone through gnustep-base and updated the collection classes (NSArray, NSCache, NSDictionary, NSSet and their subclasses) to properly declare the generic types of their elements. This is a huge win in terms of portability for code originally built using the iOS 9 or MacOS X 10.11 SDKs: Previously if you had used generics annotations on a collection (which I think is the most common case), your code just wouldn’t compile with gnustep-base. This change should be a no-op for users of gcc or older clang versions that lack the objc_generics feature. If it still breaks stuff for you, please shout at me loudly so that I can fix things ASAP.
Cheers, Niels _______________________________________________ Gnustep-dev mailing list [email protected] https://lists.gnu.org/mailman/listinfo/gnustep-dev
