ios - variable value causing error: IR generation failure program too clever -
here simple code causing problem: class coreviewcontroller: uiviewcontroller { private let ispad = ui_user_interface_idiom() == .pad } following erorr message <unknown>:0: error: ir generation failure: program clever: variable collides existing symbol objc_class_$_uidevice no error, if remove ui_user_interface_idiom() == .pad any thoughts? ui_user_interface_idiom not work in swift, it's objective-c macro. solution option 1. use uidevice.currentdevice().userinterfaceidiom instead. switch uidevice.currentdevice().userinterfaceidiom { case .phone: // it's iphone case .pad: // it's ipad case .unspecified: // undefined } option 2. request uitraitcollection instance , check idiom (recommended) let deviceidiom = uiscreen.mainscreen().traitcollection.userinterfaceidiom switch (deviceidiom) { case .pad: // it's ipad case .phone: // it's iphone case .tv: //...