diff options
author | Andrew Pinski <pinskia@physics.uc.edu> | 2006-02-13 22:31:18 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2006-02-13 22:31:18 +0100 |
commit | a7d6b7655606e2107da942ad0cc1df10ac4ead20 (patch) | |
tree | a794ae1237b5805a753aa941e0560320e6deceec /gcc/fortran | |
parent | 6f538523d1e363cb51f08b52e31062304352e543 (diff) | |
download | gcc-a7d6b7655606e2107da942ad0cc1df10ac4ead20.zip gcc-a7d6b7655606e2107da942ad0cc1df10ac4ead20.tar.gz gcc-a7d6b7655606e2107da942ad0cc1df10ac4ead20.tar.bz2 |
re PR fortran/26246 (return string length is being marked as TREE_STATIC and TREE_PUBLIC)
2006-02-13 Andrew Pinski <pinskia@physics.uc.edu>
Jakub Jelinek <jakub@redhat.com>
PR fortran/26246
* trans-decl.c (gfc_get_symbol_decl, gfc_get_fake_result_decl): Use
gfc_add_decl_to_function rather than gfc_finish_var_decl on length.
* gfortran.dg/pr26246_1.f90: New test.
* gfortran.dg/pr26246_2.f90: New test.
From-SVN: r110929
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/fortran/trans-decl.c | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 619dd27..d4a2720 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2006-02-13 Andrew Pinski <pinskia@physics.uc.edu> + Jakub Jelinek <jakub@redhat.com> + + PR fortran/26246 + * trans-decl.c (gfc_get_symbol_decl, gfc_get_fake_result_decl): Use + gfc_add_decl_to_function rather than gfc_finish_var_decl on length. + 2006-02-13 Paul Thomas <pault@gcc.gnu.org> PR fortran/26074 diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c index d1892b7..3d43c66 100644 --- a/gcc/fortran/trans-decl.c +++ b/gcc/fortran/trans-decl.c @@ -873,7 +873,7 @@ gfc_get_symbol_decl (gfc_symbol * sym) if (TREE_CODE (length) == VAR_DECL && DECL_CONTEXT (length) == NULL_TREE) { - gfc_finish_var_decl (length, sym); + gfc_add_decl_to_function (length); gfc_defer_symbol_init (sym); } } @@ -1779,7 +1779,7 @@ gfc_get_fake_result_decl (gfc_symbol * sym) length = sym->ts.cl->backend_decl; if (TREE_CODE (length) == VAR_DECL && DECL_CONTEXT (length) == NULL_TREE) - gfc_finish_var_decl (length, sym); + gfc_add_decl_to_function (length); } if (gfc_return_by_reference (sym)) |