5

I use po command in Xcode console to check some needed information. So after I used po vc I have this:

(lldb) po vc
error: field '__FuncPtr' declared with incompatible types in different translation units ('void (*)(id)' vs. 'void (*)()')
error: instance variable '_afterAppearance' declared with incompatible types in different translation units ('__block_literal_generic *' vs. '__block_literal_generic *')
note: declared here with type 'void (*)()'
note: declared here with type '__block_literal_generic *'
error: 2 errors parsing expression

po vc it's my UIViewController. I've checked it in this block of code after init:

+ (MyVC *)_new; {

    MyVC *vc = [[MyVC alloc] initWithNibName:nil bundle:nil];
    return vc;
}
Matrosov Oleksandr
  • 25,505
  • 44
  • 151
  • 277
  • 2
    What's the question? – picciano Apr 28 '15 at 13:59
  • @picciano the question is about why i don't see information of my instance variable after I printed it out in console, but see that error log. For example example if I print out NSString object it shows for me details, but for current class instance it return issue described above. – Matrosov Oleksandr Apr 28 '15 at 14:03
  • I'm getting the same problem. If I execute the exact same "PO" command again, it works. It's only every first time. Might have something to do with this: http://stackoverflow.com/questions/22969143/llvm-reports-error-declared-with-incompatible-types-in-different-translation-uni as I'm working on a chunky project. – Yasper May 05 '15 at 09:17
  • One possible cause we've found for it is having identical block definitions across the project. They are not global definitions and used in different encapsulated portions of code, the compiler has no problem with this, but their local identical definitions could be the cause of this. This can be resolved by putting these similar blocks in a single header. – Yasper May 12 '15 at 07:56

0 Answers0