Updated with macros for warnings leaks and performselector