diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3c80308120f..13e3e2fc3fe 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-10-16 Richard Guenther + + PR lto/41713 + * lto-streamer-out.c (lto_output_tree_ref): Handle DEBUG_EXPR_DECL + the same as VAR_DECL. + 2009-10-16 Richard Guenther * gimple.c (iterative_hash_gimple_type): For integer types diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 9d097f0b503..737206cb8f6 100644 --- a/gcc/lto-streamer-out.c +++ b/gcc/lto-streamer-out.c @@ -690,6 +690,7 @@ lto_output_tree_ref (struct output_block *ob, tree expr) break; case VAR_DECL: + case DEBUG_EXPR_DECL: gcc_assert (decl_function_context (expr) == NULL); output_record_start (ob, LTO_global_decl_ref); lto_output_var_decl_index (ob->decl_state, ob->main_stream, expr); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 587f1536920..d55be035dfc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-10-16 Richard Guenther + + PR lto/41713 + * gfortran.dg/lto/20091016-1_0.f90: New testcase. + 2009-10-15 Jakub Jelinek PR debug/41717 diff --git a/gcc/testsuite/gfortran.dg/lto/20091016-1_0.f90 b/gcc/testsuite/gfortran.dg/lto/20091016-1_0.f90 new file mode 100644 index 00000000000..c26ad90fbe2 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/lto/20091016-1_0.f90 @@ -0,0 +1,12 @@ +! { dg-lto-do link } +! { dg-lto-options {{-flto -g -fPIC -shared} {-O -flto -g -fPIC -shared}} } + + FUNCTION makenumberstring(x) + IMPLICIT NONE + REAL, INTENT(IN) :: x + CHARACTER(len=20) :: makenumberstring + INTEGER :: xx + xx = x**2 ! << ICE + makenumberstring = '' + END FUNCTION +