http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56161



Jakub Jelinek <jakub at gcc dot gnu.org> changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

             Status|UNCONFIRMED                 |RESOLVED

                 CC|                            |jakub at gcc dot gnu.org

         Resolution|                            |INVALID



--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-01-31 
11:45:53 UTC ---

  double cam_xyz[4][3];

...

        for (j=0; j < 12; j++)

          cam_xyz[0][j] = table[i].trans[j] / 10000.0;

When using cam_xyz[0][j], this is first converted into a pointer to array of 3

doubles, so cam_xyz[0][3] store (up to cam_xyz[0][11] store) all invoke

undefined behavior.

You just can't initialize a two dimensional array this way.

Reply via email to