diff options
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/module.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 592d37b02d6..33afd97171d 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2010-09-26 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/45793 + * module.c (create_int_parameter_array): Set the array value shape. + 2010-09-25 Tobias Burnus <burnus@net-b.de> * gfortran.texi: Re-add accidently removed \input line. diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index d4824a73da1..5c1e5c79276 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -5305,7 +5305,8 @@ create_int_parameter (const char *name, int value, const char *modname, } -/* Value is already contained the array constructor, but not yet the shape. */ +/* Value is already contained by the array constructor, but not + yet the shape. */ static void create_int_parameter_array (const char *name, int size, gfc_expr *value, @@ -5313,7 +5314,6 @@ create_int_parameter_array (const char *name, int size, gfc_expr *value, { gfc_symtree *tmp_symtree; gfc_symbol *sym; - gfc_expr *e; tmp_symtree = gfc_find_symtree (gfc_current_ns->sym_root, name); if (tmp_symtree != NULL) @@ -5342,8 +5342,8 @@ create_int_parameter_array (const char *name, int size, gfc_expr *value, sym->as->upper[0] = gfc_get_int_expr (gfc_default_integer_kind, NULL, size); sym->value = value; - e->shape = gfc_get_shape (1); - mpz_init_set_ui (e->shape[0], size); + sym->value->shape = gfc_get_shape (1); + mpz_init_set_ui (sym->value->shape[0], size); } |