title: Eigen Vector4d as function argument?
body: <p>I am attempting to pass an Eigen::Vector4d into an function like this:</p>
  
  <pre><code>  Matrix3d quat2DCM(Vector4d quat)
    {
      quat = quat;
      return Matrix3d::Identity();
      //nevemind the guts of this function, that'l come after this works
    }
  </code></pre>
  
  <p>the VC++2005 compiler is giving me the following error:</p>
  
  <blockquote>
    <p>error C2719: 'quat': formal parameter with __declspec(align('16')) won't be aligned</p>
  </blockquote>
  
  <p>Which does not happen for Eigen::Vector3d objects as arguments.  I have noticed that in some online discussion that the Vector4d class is particularly picky about it's alignment, moreso than the other canned typedefs.  When using the Vector4d in a class, I found it necessary to use the macro <code>EIGEN_MAKE_ALIGNED_OPERATOR_NEW</code> which overrides the <code>new</code> Is there a similar workaround for passing them s arguments?</p>