This one might be related to bug 44568 since it is also related to polymorphic derived type arrays.
module ice8 type::a_type end type a_type contains subroutine do_something() class(a_type),dimension(:),allocatable::values if(allocated(values))deallocate(values) end subroutine do_something end module ice8 The compiler output: gimplification failed: &values.$data <addr_expr 0x7fc2f671e600 type <pointer_type 0x7fc2f6816000 type <record_type 0x7fc2f6811a80 array1_a_type type_1 BLK size <integer_cst 0x7fc2f680c4b0 constant 384> unit size <integer_cst 0x7fc2f6807708 constant 48> align 64 symtab 0 alias set -1 canonical type 0x7fc2f6811b28 fields <field_decl 0x7fc2f680d8e8 data> pointer_to_this <pointer_type 0x7fc2f6816000> chain <type_decl 0x7fc2f68132e0 D.1557>> public unsigned DI size <integer_cst 0x7fc2f671b7a8 constant 64> unit size <integer_cst 0x7fc2f671b7d0 constant 8> align 64 symtab 0 alias set -1 canonical type 0x7fc2f68160a8> arg 0 <component_ref 0x7fc2f672a1c0 type <record_type 0x7fc2f6811a80 array1_a_type> arg 0 <var_decl 0x7fc2f68120a0 values type <record_type 0x7fc2f6811690 class$a_type_1_a> addressable used BLK file /scratch/tmp/gfortran_int_err/ice8.f03 line 30 col 0 size <integer_cst 0x7fc2f68079d8 constant 448> unit size <integer_cst 0x7fc2f6807a28 constant 56> align 64 context <function_decl 0x7fc2f680fd00 do_something>> arg 1 <field_decl 0x7fc2f6817000 $data type <record_type 0x7fc2f6811a80 array1_a_type> BLK file /scratch/tmp/gfortran_int_err/ice8.f03 line 30 col 0 size <integer_cst 0x7fc2f680c4b0 384> unit size <integer_cst 0x7fc2f6807708 48> align 64 offset_align 128 offset <integer_cst 0x7fc2f671b410 constant 0> bit offset <integer_cst 0x7fc2f671bb18 constant 0> context <record_type 0x7fc2f6811690 class$a_type_1_a> chain <field_decl 0x7fc2f6817098 $vptr>>>> /scratch/tmp/gfortran_int_err/ice8.f03: In Funktion »do_something«: /scratch/tmp/gfortran_int_err/ice8.f03:29:0: interner Compiler-Fehler: Gimplifikation gescheitert -- Summary: [OOP] ICE on allocated statement with polymorphic derived type array Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: boschmann at tp1 dot physik dot uni-siegen dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44570