! { dg-do run } ! This test is here to prevent a regression in gfc_conv_intrinsic_loc. ! Taking the loc of something in a common block was a special case ! that caused in internal compiler error in gcc/expr.c, in ! expand_expr_addr_expr_1(). program test common /targ/targ integer targ(10) call fn end program test subroutine fn common /targ/targ integer targ(10) call foo (loc (targ)) ! Line that caused ICE end subroutine fn subroutine foo (ii) common /targ/targ integer targ(10) integer ii targ(2) = ii end subroutine foo