diff options
author | Richard Guenther <rguenther@suse.de> | 2009-10-16 14:21:05 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2009-10-16 14:21:05 +0000 |
commit | 775dc6700b6711e1c4ba07194d3464388ee06db3 (patch) | |
tree | b5c8587e5161bd56aa2812a44a528b3f182cc468 /gcc | |
parent | ac2b9bbbd51f78c2b42122df733f9fa84d48fcc9 (diff) | |
download | gcc-775dc6700b6711e1c4ba07194d3464388ee06db3.zip gcc-775dc6700b6711e1c4ba07194d3464388ee06db3.tar.gz gcc-775dc6700b6711e1c4ba07194d3464388ee06db3.tar.bz2 |
re PR middle-end/41713 (-O -flto -g: ICE in lto_output_tree_ref, at lto-streamer-out.c:732)
2009-10-16 Richard Guenther <rguenther@suse.de>
PR lto/41713
* lto-streamer-out.c (lto_output_tree_ref): Handle DEBUG_EXPR_DECL
the same as VAR_DECL.
* gfortran.dg/lto/20091016-1_0.f90: New testcase.
From-SVN: r152902
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/lto-streamer-out.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/lto/20091016-1_0.f90 | 12 |
4 files changed, 24 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3c80308..13e3e2f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2009-10-16 Richard Guenther <rguenther@suse.de> + 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 <rguenther@suse.de> + * gimple.c (iterative_hash_gimple_type): For integer types also hash their minimum and maximum values and the string flag. For array types hash their domain and the string flag. diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 9d097f0..737206c 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 587f153..d55be035 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-10-16 Richard Guenther <rguenther@suse.de> + + PR lto/41713 + * gfortran.dg/lto/20091016-1_0.f90: New testcase. + 2009-10-15 Jakub Jelinek <jakub@redhat.com> 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 0000000..c26ad90 --- /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 + |