title: archivedDataWithRootObject: on 32 bit app, unarchiveObjectWithData: on 64 bit app
body: <p>We are updating our app to support 64 bit. When the app was still 32 bit we have persisted some data in the user defaults and file system via <code>archivedDataWithRootObject:</code>.</p>
  
  <p><strong>Can there be any issues when doing <code>unarchiveObjectWithData:</code> on this 32 bit data on the 64 bit app?</strong></p>
  
  <p>I have found these remarks by Apple in the <a href="https://developer.apple.com/library/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/Major64-BitChanges/Major64-BitChanges.html#//apple_ref/doc/uid/TP40013501-CH2-SW1" rel="nofollow">64-Bit Transition Guide</a>:</p>
  
  <blockquote>
    <ul>
    <li>Fix alignment issues caused by changes in data type sizes.</li>
    <li>Ensure that memory structures that are shared between the 32-bit and 64-bit runtimes share a similar layout.</li>
    </ul>
  </blockquote>
  
  <p>But when looking at the documentation of <code>NSKeyedArchiver</code> it says that non-fitting datatypes are automatically coerced.</p>