------- Comment #4 from burnus at gcc dot gnu dot org  2010-04-26 17:38 -------
Confirmed with 4.5.0 and 4.6.0.

At least NAG f95 thinks that the current code is invalid; it writes for the
second file:

Error: m_vector.f03, line 394: Reference via operator * to impure
ROTATION_MATRIX_TIMES_VECTOR from pure ROTATION_MATRIX_TIMES_VECTOR
which is in the following line:

! Compute result
  res%x = rot * right%x

 * * *

The assert fails at gfc_conv_variable for:
  sym = expr->symtree->n.sym;
  if (se->ss != NULL)
    {
      /* Check that something hasn't gone horribly wrong.  */
      gcc_assert (se->ss != gfc_ss_terminator);
      gcc_assert (se->ss->expr == expr); <<<<<<< ICE

 * * *

My old "4.6.0 20100421 fortran-dev revision 158628" fails with another ICE:
ICE in gfc_build_null_descriptor, at fortran/trans-array.c:373


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code


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

Reply via email to