Commit ffab1d07 by Richard Guenther Committed by Richard Biener

re PR middle-end/42119 (internal compiler error: in expand_expr_addr_expr_1, at expr.c:6862)

2009-11-30  Richard Guenther  <rguenther@suse.de>

	PR middle-end/42119
	PR fortran/38530
	* expr.c (expand_expr_addr_expr_1): Properly expand the initializer
	of CONST_DECLs.

	* gfortran.dg/pr42119.f90: New testcase.

From-SVN: r154778
parent c84b434f
2009-11-30 Richard Guenther <rguenther@suse.de>
PR middle-end/42119
PR fortran/38530
* expr.c (expand_expr_addr_expr_1): Properly expand the initializer
of CONST_DECLs.
2009-11-30 Richard Guenther <rguenther@suse.de>
* tree-into-ssa.c (insert_phi_nodes): Add PHI nodes in
variable UID order.
......@@ -6840,9 +6840,8 @@ expand_expr_addr_expr_1 (tree exp, rtx target, enum machine_mode tmode,
return expand_expr (TREE_OPERAND (exp, 0), target, tmode, modifier);
case CONST_DECL:
/* Recurse and make the output_constant_def clause above handle this. */
return expand_expr_addr_expr_1 (DECL_INITIAL (exp), target,
tmode, modifier, as);
/* Expand the initializer like constants above. */
return XEXP (expand_expr_constant (DECL_INITIAL (exp), 0, modifier), 0);
case REALPART_EXPR:
/* The real part of the complex number is always first, therefore
......
2009-11-30 Richard Guenther <rguenther@suse.de>
PR middle-end/42119
PR fortran/38530
* gfortran.dg/pr42119.f90: New testcase.
2009-11-30 Dodji Seketeli <dodji@redhat.com>
PR c++/42069
......
! { dg-do compile }
module Test
use ISO_C_BINDING
contains
subroutine Callback(arg) bind(C)
integer(C_INT) :: arg
end subroutine Callback
subroutine Check(proc)
type(C_FUNPTR) :: proc
end subroutine Check
end module Test
program Main
use Test
type(C_FUNPTR) :: proc
call Check(C_FUNLOC(Callback))
end program Main
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment