------- 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