1. #import <Availability.h> 
  2. #undef weak_delegate 
  3. #if __has_feature(objc_arc_weak) 
  4. #define weak_delegate weak 
  5. #else 
  6. #define weak_delegate unsafe_unretained 
  7. #endif