title: NSNotFound, NSInteger, NSUInteger, and NSRange.location
body: <p><code>NSNotFound</code> is defined as <code>NSIntegerMax</code>, which is defined as <code>LONG_MAX</code>.</p>
  
  <p><code>NSRange.location</code> is defined as a <code>NSUInteger</code>.</p>
  
  <p>Some Foundation methods return an <code>NSRange</code> whose location value is <code>NSNotFound</code>.</p>
  
  <p>So, one often does this comparison:</p>
  
  <pre><code>if (aRange.location == NSNotFound) 
  </code></pre>
  
  <p>But isn't that a comparison between signed and unsigned integers that should generate a warning?</p>