Found at
http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/0f1d7da66fa015c2

(There is another issue with constant folding, which Steve wants to fix.)

The following program compiles with NAG f95/g95/ifort and prints "T F". With
gfortran 4.3 and 4.4 it crashes (with 4.1/4.2 it does not compile):

f951: internal compiler error: in gfc_target_encode_expr, at
fortran/target-memory.c:249

  gcc_assert (source->expr_type == EXPR_CONSTANT
              || source->expr_type == EXPR_STRUCTURE
              || source->expr_type == EXPR_SUBSTRING);

Here, source->expr_type == EXPR_OP.

Reduced testcase:
   integer z(0*transfer(2.D0**2.,1)+2)
   end

Long testcase, see
http://groups.google.com/group/comp.lang.fortran/msg/c71f697c3e21e3f2


-- 
           Summary: ICE in in gfc_target_encode_expr
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


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

Reply via email to