aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/pr103007.C
blob: 1631a85080039f29b83c97d2f62c66be9eac109f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* { dg-do compile } */
/* { dg-additional-options "-O3" } */

typedef float MushMeshVector[4];
struct MushMeshQuaternionPair {
  void VectorRotate(MushMeshVector &);
  MushMeshVector m_first;
  MushMeshVector m_second;
};
void 
MushMeshQuaternionPair::
VectorRotate(MushMeshVector &ioVec)  {
  ioVec[2] = (2 - m_first[1] + m_first[3] * 0);
  ioVec[3] = (m_first[3] + m_first[1] - m_first[2] * 0);
  float c = ioVec[2], d = ioVec[3];
  ioVec[2] = (0 - d * m_second[1]);
  ioVec[3] = (2 - c * m_second[1]);
}