title: "bad codegen, pointer diff" linker error with Xcode 4
body: <p>Recompiling a C++ iPhone app with Xcode 4 I get this nasty linker error:</p>
  
  <pre><code>ld: bad codegen, pointer diff in __static_initialization_and_destruction_0(int, int)
  to global weak symbol vmml::Vector2&lt;float&gt;::ZERO for architecture armv6
  </code></pre>
  
  <p>Anyone know what it means? How to make it go away would be nice too of course :)</p>
  
  <p>The app compiled &amp; linked without error in Xcode 3.</p>
  
  <p><strong>Edit</strong>: the solution is to set <em>Symbols Hidden By Default</em> to <em>Yes</em> in all the build settings of all targets in the project.  Still none the wiser what the actual problem was. </p>