title: Why is "long" interpretation of kCFPositiveInfinity different on various iDevices?
body: <p>I have been tinkering with <strong>NSNumber</strong> for a little while when searching for infinity value and I have come across one interesting fact. When I do this:</p>
  
  <pre><code>long infinity = [((NSNumber *)kCFNumberPositiveInfinity) longValue];
  </code></pre>
  
  <p>32bit simulator interprets it as <strong>0</strong>, while 64bit simulator interprets it as <strong>-9223372036854775808</strong>.</p>
  
  <p>Now I remember my Computer Architecture 101 and they used to tell us - 32bit = <em>smaller range</em>, 64bit = <em>wider range</em>. But obviously, on 64bit simulator's interpretation of positive infinity there is an overflow(since my research tells me that <em>positive</em> infinity will most likely be a <em>positive</em> number).</p>
  
  <p>The question is - is this a feature(if so, then why?), or a bug?</p>