title: NSInteger and NSUInteger in a mixed 64bit / 32bit environment
body: <p>I have a fair amount of string format specifiers in NSLog / NSAssert etc. calls which use <code>%d</code> and <code>%u</code> with <code>NSInteger (= int on 32bit)</code> and <code>NSUInteger (= unsigned int on 32bit)</code> types respectively.</p>
  
  <p>When converting the app to 64bit, this gives warnings (of course), as <code>%ld %lu</code> is expected for what now became a <code>long</code> and <code>unsigned long</code> type.</p>
  
  <p>Simply converting the format specifiers will of course introduce the reverse warnings in the 32bit build.<br>
  So the only solution I see to become warning free is using the 64bit specifiers, and casting to the 64bit value types everywhere a warning is given in the 32bit build.</p>
  
  <p>But I was wondering if perhaps there are format specifiers specifically for the <code>NSInteger</code> and <code>NSUInteger</code> type which would work on both architectures without casting?</p>