Xcode 9 throws errors involving 'require'
When upgrading code to build under Xcode 9, I see compile errors in code using require and require_noerr : require(length > offsetof(struct blob, cert), outLabel); The first error is: error: implicit declaration of function 'require' is invalid in C99 I also get a lot of error: use of undeclared identifier 'outLabel' . This is in RRTransactionVerifier.m which is Apple code for dealing with receipt validation. How do I fix these errors? Danny Parker require and require_noerr are macros that used to be defined in AssertMacros.h. As of Xcode 9 these macros have changed. The reasons are documented